문제 링크 / level: Bronze V
https://www.acmicpc.net/problem/10757
내가 생각한 풀이
피보나치 수 시리즈 중 [10826. 피보나치 수 4] 문제를 풀어보려고 했는데, 숫자의 범위가 long type으로 커버가 안 될만큼 커졌다. 그래서 도저히 이 문제에 어떻게 접근해야 하는지조차 감이 잡히질 않아서 질문 검색을 통해 이런 저런 의견을 읽어보던 중, 누군가가 바로 이 문제(10757. 큰 수 A+B)는 풀어보았느냐- 이 문제부터 풀어봐라-라고 해서 도전해봤다. 이런건 남의 말 참 잘 듣쥬?😎
문제는 굉장히 단순하다. 그냥 input으로 주어지는 A와 B를 더한 결과값을 출력해주면 끝이다.
하지만 진짜 문제는???!! 그 숫자가 너무 커서 long type으로도 받아낼 수가 없다는 것!!
이런저런 검색을 해본 결과 다행히(?) JAVA에서는 long type보다도 훨씬 큰 수들을 위한 BigInteger 클래스가 존재해서 이 클래스 내의 메소드들을 활용할 수가 있었다. 참고로 다른 언어의 경우에는 String으로 시작해서 직접 어쩌구 저쩌구 해줘야 한다고 하니 감사한 마음을 가지고 사용하도록 하자^_^
특히 이 문제에서는 A+B 연산을 수행하는 것이 목표이므로, BigInteger 클래스의 add 메소드를 활용하면 게임 끝이다🤗👊
// 핵심 코드
static BigInteger A, B;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
A = sc.nextBigInteger();
B = sc.nextBigInteger();
System.out.println(A.add(B));
}
입력되는 숫자를 받을 변수 A와 B를 BigInteger type(정확히는 타입은 아니지만,,,)으로 선언한 뒤에, 아까 Java API 문서에서 봤던 add 메소드를 활용해주면 문제를 손쉽게 해결할 수 있다.
이런 클래스가 존재한다는 것을 모른다면 아마 풀기 어려웠겠지.. 역시 아는 만큼 보인다는 말은 진리 중의 진리!!
오늘도 이렇게 (사실 9일 전에 풀었지만^_^) 또 하나의 지식을 얻어갑니다... 총총총..👩👋
과연 만두는 이제 [10826. 피보나치 수 4] 문제를 풀 수 있을 것인가? (두둥)
- 피보나치 수 시리즈는 계속된다, to be continued... -
'🥇Problem Solving (psS2mj) > BOJ' 카테고리의 다른 글
[BOJ] 1463. 1로 만들기 (Java) (0) | 2020.04.17 |
---|---|
[BOJ] 1913. 달팽이 (Java) (0) | 2020.04.16 |
[BOJ] 10870. 피보나치 수 5 (Java) (0) | 2020.04.07 |
[BOJ] 2748. 피보나치 수 2 (Java) (0) | 2020.04.07 |
[BOJ] 2747. 피보나치 수 (Java) (0) | 2020.04.07 |
댓글