큰 수 A+B(10757)

10000자리 정도의 자연수는 어떻게 풀까?

문제

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 A와 B가 주어진다. (0 < A,B < 10의10000승)

출력

첫째 줄에 A+B를 출력한다.

예제 입력

9223372036854775807 9223372036854775808

예제 출력

18446744073709551615

숫자만 보니까 int나 long으로는 해결이 안될꺼같애서 자료형이 뭐가 있는지 찾아봤는데

자료형의 크기가 무제한인 bigint라는 자료형이 존재하고 있었다.

간단히 기본 자료형인 int나 long 이외에 자료형을 사용하면 쉽게 해결할 수 있었음

풀이

import java.io.*;
import java.math.BigInteger;
import java.util.StringTokenizer;

public class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine(), " ");
        BigInteger A = new BigInteger(st.nextToken());
        BigInteger B = new BigInteger(st.nextToken());
        System.out.println(A.add(B));
    }
}

https://www.acmicpc.net/problem/10757

Last updated

Was this helpful?