[programmers] λ μμ ν© - Java
λ κ°μ λ¬Έμμ΄ ννμ μ μ 'a'μ 'b'κ° μ£Όμ΄μ‘μ λ, μ΄λ€μ ν©μ λ¬Έμμ΄λ‘ λ°ννλ solution ν¨μλ₯Ό μμ±νλ λ¬Έμ μ
λλ€. 'a'μ 'b'μ κΈΈμ΄λ κ°κ° 1 μ΄μ 100,000 μ΄νμ΄λ©°, μ«μλ‘λ§ κ΅¬μ±λμ΄ μμ΅λλ€. 'a'μ 'b'λ 0μ΄ μλλ©΄ 0μΌλ‘ μμνμ§ μμ΅λλ€. μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ Javaμ BigDecimal ν΄λμ€λ₯Ό μ¬μ©νμ¬ μ«μλ₯Ό μ λ°νκ² κ³μ°νμ΅λλ€. μ΄ ν΄λμ€μ λ¨μ μ λλ¦° μλμ κΈ°λ³Έ νμ
λ³΄λ€ λΆνΈν μ¬μ©λ²μ
λλ€.
Jan 20, 2024
λ¬Έμ μ€λͺ
0 μ΄μμ λ μ μκ° λ¬Έμμ΄
a
, b
λ‘ μ£Όμ΄μ§ λ, a
+ b
μ κ°μ λ¬Έμμ΄λ‘ return νλ solution ν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ.μ νμ¬ν
- 1 β€
a
μ κΈΈμ΄ β€ 100,000
- 1 β€
b
μ κΈΈμ΄ β€ 100,000
a
μb
λ μ«μλ‘λ§ μ΄λ£¨μ΄μ Έ μμ΅λλ€.
a
μb
λ μ μ 0μ΄ μλλΌλ©΄ 0μΌλ‘ μμνμ§ μμ΅λλ€.
μ μΆλ ₯ μ
a | b | result |
"582" | "734" | "1316" |
"18446744073709551615" | "287346502836570928366" | "305793246910280479981" |
"0" | "0" | "0" |
μ μΆλ ₯ μ μ€λͺ
μ
μΆλ ₯ μ #1
- μμ 1λ²μ
a
,b
λ κ°κ° 582, 734μ΄κ³ 582 + 734 = 1316μ λλ€. λ°λΌμ "1316"μ return ν©λλ€.
μ
μΆλ ₯ μ #2
- μμ 2λ²μ
a
,b
λ κ°κ° 18446744073709551615, 287346502836570928366μ΄κ³ 18446744073709551615 + 287346502836570928366 = 305793246910280479981μ λλ€. λ°λΌμ "305793246910280479981"μ return ν©λλ€.
μ
μΆλ ₯ μ #3
- μμ 3λ²μ
a
,b
λ κ°κ° 0, 0μ΄κ³ 0 + 0 = 0μ λλ€. λ°λΌμ "0"μ return ν©λλ€.
solution.java
import java.math.*;
class Solution {
public String solution(String a, String b) {
BigDecimal x = new BigDecimal(a);
BigDecimal y = new BigDecimal(b);
return "" + x.add(y);
}
}
ν΅μ¬ ν€μλ
- μμ 1λ² κ°μ κ²½μ° intλ longμΌλ‘ ννν μ μλ λ²μ λ΄μ κ°μ΄λ―λ‘ μΌλ°μ μΈ μ°μ°μ΄ κ°λ₯νλ€.
- νμ§λ§ μμ 2λ² κ°μ κ²½μ° longμΌλ‘ ννν μ μλ κ°μ λ²μλ₯Ό λ²μ΄λλ€.
- λ°λΌμ Javaμμ μ 곡νλ BigDecimal ν΄λμ€λ₯Ό ν΅ν΄ μ«μλ₯Ό μ λ°νκ² κ³μ°ν΄μΌ νλ€.
- BigDecimalμ λ¨μ μ λλ¦° μλ, κΈ°λ³Έ νμ λ³΄λ€ λΆνΈν μ¬μ©λ²μ΄λ€.
κ²°λ‘ !
ν΄λΉ λ¬Έμ λ₯Ό νλ©΄μ μ½λλ₯Ό μμ±νλ€κ° ννν μ μλ κ°μ λ²μλ₯Ό λ²μ΄λλ μμ κ³μ°μ μ΄λ €μμ κ²ͺμκ³ , μ΄λ₯Ό BigDecimal ν΄λμ€λ₯Ό ν΅ν΄ ν΄κ²°ν μ μμλ€.
Share article