본문 바로가기
프로그래밍/백준 알고리즘 코드

백준 10757번 java 큰 수 A + B (수학1)

by 졸린이 2021. 1. 7.
반응형

int나 long으로는 범위를 벗어나기 때문에 그냥 int a = sc.nextInt(); int b = sc.nextInt(); a+b;로는 오류가 뜬다.

그러면 어떻게 하냐 뭐 두 문자열로 입력받아 각 자리에 일치하는 수를 추출해서 더해주는 방식도 있겠고..(charAt())

또 다른 여러 방법이 있겠지만.. 나는 무식해서 그런건 좀 하기 싫고 그냥 실행만 되고 최대한 짧은 코드를 좋아한다.

자바에 클래스 중에서 BigInteger를 import하여 사용하면 초 간단하게 해결할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
import java.util.Scanner;
import java.math.BigInteger;
 
//baekjoon_10757_큰수 a+b
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
    
        BigInteger a = sc.nextBigInteger();
        BigInteger b = sc.nextBigInteger();
        
        System.out.println(a.add(b));
    }
}
cs

히이익 짧아도 너무 짧아서 너무 행복하다.

우선 3행에서 import java.math.BigInteger; 로 임포트한다.

 

line10, 11 : BigInteger a, b 로 변수를 선언하고 sc.nextBigInteger()로 입력받는다. 엥? int랑 완전 같은 형식이쟈낭

line13 : 여기서 원래같았으면 a+b만 하면 그만이지만 BigInteger는 a.add(b)형식으로 더해줘야 된다.

 

아무튼 초간단 끝

 

 

반응형

댓글