반응형
[1] 백준 카테고리
단계별로 풀어보기
기본 수학 1
8단계 10757번 문제
큰 수 A+B
[2] 문제
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
1. 입력
첫째 줄에서 A와 B가 주어진다.
2. 출력
첫째 줄에 A+B를 출력한다.
3. 예제 입력 1
9223372036854775807 9223372036854775808
4.예제 출력 1
18446744073709551615
[3] 정답
1. 정답 해설 미포함
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) throws NumberFormatException, 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());
BigInteger sum = A.add(B);
System.out.print(sum);
}
}
2. 정답 해설 포함
import java.io.BufferedReader;
/* BufferedReader 사용을 위해서 java.io.BufferedReader 클래스를 import 한다
Enter를 경계로 인식하고 받은 데이터는 String으로 고정된다.*/
import java.io.InputStreamReader;
/* byte 단위 데이터를 문자 단위 데이터로 처리할 수 있도록 변환해주기 위해서
InputStreamReader를 사용한다.
InputStreamReader 사용을 위해서 java.io.InputStreamRead 클래스를 import 한다. */
import java.io.IOException;
/* 예외처리를 위해서 IOException를 사용한다
IOException 사용을 위해서 java.io.IOException 클래스를 import 한다*/
import java.util.StringTokenizer;
/* 공백 단위로 호출하기 위해서 StringTokenizer를 사용한다
StringTokenizer를 사용하기 위해서
StringTokenizer java.util.StringTokenizer 클래스를 import 한다. */
import java.math.BigInteger;
// BigInteger 사용하기 위해서 java.math.BigInteger 클래스를 import 한다
public class Main {
public static void main(String[] args) throws NumberFormatException, IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// BufferReader 객체 br를 선언한다
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
// StringTokenizer 객체 st를 선언한다 이제 공백으로 값을 입력받을 수 있다.
BigInteger A = new BigInteger(st.nextToken());
// BigInteger 클래스 A를 선언하고 값을 입력 받아 저장한다
BigInteger B = new BigInteger(st.nextToken());
// BigInteger 클래스 B를 선언하고 값을 입력 받아 저장한다
BigInteger sum = A.add(B);
// BigInteger 클래스 sum를 선언하고 A+B한 값을 받아 저장한다.
System.out.print(sum);
// BigInteger sum에 저장된 값을 출력한다.
}
}
long의 범위를 넘어가므로 BigInteger 클래스를 사용해서 값을 입력받았다. BigInteger은 문자열 형태이므로 숫자의 범위가 무한하므로 어떠한 숫자든지 저장할 수 있다.
BigInteger는 문자열이므로 사칙연산이 되지 않는다. BigIntger 클래스 내부 메서드를 사용해서 덧셈해야 한다.
BigInteger sum = A.add(B);
반응형
'프로그래밍 > 백준 문제 풀이(자바)' 카테고리의 다른 글
백준 1978번 자바 문제 답/해설(소수 찾기 문제) (0) | 2021.12.22 |
---|---|
백준 1011번 자바 문제 답/해설(Fly me to the Alpha Centauri 문제) (0) | 2021.12.21 |
백준 2839번 자바 문제 답/해설(설탕 배달 문제) (0) | 2021.12.19 |
백준 2775번 자바 문제 답/해설(부녀회장이 될테야 문제) (0) | 2021.12.18 |
백준 10250번 자바 문제 답/해설(ACM 호텔 문제) (0) | 2021.12.17 |