https://www.acmicpc.net/problem/10757
백준 10757번 큰 수 A+B 문제 링크입니다.
단순한 A+B를 계산하는 문제이지만, 값이 매우 크다는 문제가 있습니다.
핵심
흔히 사용되는 기본형 8개의 값은 위의 범위를 초과하면 안 된다.
하지만 우리가 구하려는 값은 위의 범위를 훨씬 뛰어넘는다.
이때 사용하는 것이 바로 BigInteger 클래스이다.
정답 코드
import java.util.Scanner;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
BigInteger A = new BigInteger(sc.next());
BigInteger B = new BigInteger(sc.next());
System.out.println(A.add(B));
}
}
해설
우선 BigInteger를 사용하기 위해서는 import java.math.BigInteger; 를 추가해야 한다.
또한 BigInteger은 문자형이다. 따라서 사칙연산을 통해 값을 계산할 수 없다.
이를 해결하기 위해 BigInteger클래스의 메서드를 사용하면 된다.
BigInteger클래스의 메서드는
- add(Biginteger val) // 더하기
- subtract(Biginteger val) // 빼기
- mutiply(Biginteger val) // 곱하기
- devide(Biginteger val) // 나누기
- equals(Object x) // 값이 같은지를 비교
위와 같은 메서드들이 있다.
우리가 필요한 메서드는 더하기이므로 add 메서드를 사용하였다.
개선점이나 오류가 있다면, 댓글로 알려주시면 감사하겠습니다.
'PS > 알고리즘 문제풀이' 카테고리의 다른 글
[백준]2108번 통계학(java) (1) | 2022.07.04 |
---|---|
[백준]2581번 소수(java) (0) | 2022.07.04 |
[백준]2838번 설탕 배달(java) (2) | 2022.07.04 |
[백준]4673번 셀프넘버(java) (0) | 2022.07.04 |
[백준] 1316번 그룹단어 체커(java) (0) | 2022.07.04 |