본문 바로가기

알고리즘/🥉 브론즈

백준 2338 긴자리 계산 자바 풀이

728x90

난이도 : 브론즈5

풀이일 : 05033

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

 

2338번: 긴자리 계산

첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A×B를 출력한다. 각각을 출력할 때, 답이 0인 경우를 제외하고는 0으로 시작하게 해서는 안 된다(1을 01로 출력하면 안 된다는 의미).

www.acmicpc.net


링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐


풀이 코드

import java.util.*;
import java.math.*;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		BigInteger a = scan.nextBigInteger();
		BigInteger b = scan.nextBigInteger();
		scan.close();
		
		System.out.println(a.add(b));
		System.out.println(a.subtract(b));
		System.out.println(a.multiply(b));
	}
}
  • 문제에서 주어질 수 있는 숫자의 자릿수가 크게 명시되어 있어 int 대신 BigInteger를 사용해야 한다.
  • 우선 math를 import 받고, 메서드로 계산 하는 것 주의

느낀점

같은 날, 1271 엄청난 부자2 문제를 풀어서 쉽게 풀었다.

BigInteger로 받은 데이터의 나눗셈, 곱셉을 연습하고 싶은 사람은 1271번을 풀어봐도 좋을 것 같다.