코딩테스트/백준

A + B - 9 JAVA(백준, 15740)

멍토 2020. 9. 28.

난이도 : Bronze 5

문제번호 : 15740

문제 주소 및 출처입니다.

www.acmicpc.net/problem/15740

 

15740번: A+B - 9

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

www.acmicpc.net


목차

1. 문제 설명

2. 문제 해석

3. 소스 코드


1. 문제 설명

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

입력

첫째 줄에 A B (-1010000  A, B ≤ 1010000)가 주어진다.

출력

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


2. 문제풀이

해당 문제는 일반적인 자료형의 크기로 감당이 되지않는 문제입니다.

파이썬의 경우는 크기의 제한이 없기때문에 상관이 없지만 C++이나 Java의 경우 문제가 생깁니다.

int의 경우 4byte 이므로 32비트 2^32 사이즈

long의 경우 8byte 이므로 64비트 2^64 사이즈

둘다 불가능합니다.

그래서 BigInteger 라는 자료구조를 이용하면 이 문제를 풀 수 있수 있습니다.

풀이는 아래와 같습니다.


3. 소스코드

import java.math.BigInteger;
import java.util.Scanner;
 
public class Main {
 
    private static final String SPLIT_STR = " ";
    private static final int ZERO = 0;
    private static final int ONE = 1;
 
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        sum(scanner);
    }
 
    public static void sum(Scanner scanner) {
        String[] data = scanner.nextLine().split(SPLIT_STR);
        BigInteger a = new BigInteger(data[ZERO]);
        BigInteger b = new BigInteger(data[ONE]);
        System.out.println(a.add(b));
    }
}

'코딩테스트 > 백준' 카테고리의 다른 글

Hashing Python(백준, 15829)  (0) 2020.09.29
이항계수 Python(백준, 11050)  (0) 2020.09.26
A + B - 6 JAVA(백준, 10953)  (0) 2020.09.25
A + B - 4 Python(백준, 10951)  (0) 2020.09.24
알파벳 찾기 Python(백준, 10809)  (0) 2020.09.23

댓글

💲 광고입니다.