문제
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 A와 B가 주어진다. (0 < A,B < 1010000)
출력
첫째 줄에 A+B를 출력한다.
예제 입력 1 복사
9223372036854775807 9223372036854775808
예제 출력 1 복사
18446744073709551615
내가 적은 코드
var fs = require("fs");
var input = fs.readFileSync("예제.txt").toString().split(" ");
let a = BigInt(input[0]);
let b = BigInt(input[1]);
console.log((a + b));
이렇게 적으면 출력 끝에 n이 나오게되서18446744073709551615n이렇게 나왔다
뭔가했더니 마지막에 toString()을 해줘야함왜냐면 bigInt는 끝에 n이 딸려오기때문
거기다bigInt는 2^53 -1 보다 큰 정수를 표현할 수 있는데bigInt를 한 수들끼리만 계산이 되고계산 후에는 n이 나오게 됨
또한 bigInt는 내장 Math객체의 메서드와 함께 사용XNumber와 혼합해서 못씀(당연하게도)
타입도 typeof 를 찍어보면 bigInt가 나옴
단순한 문제인 줄 알았는데 이런 알면서도(?) 모를 듯한메서드 들을 쓰게하는게 백준 브론즈 단계의 문제들인 것 같ah
'JavaScript' 카테고리의 다른 글
[JavaScript] - 숫자 문자열과 영단어 (2021 카카오 채용연계형 인턴십) (0) | 2022.02.23 |
---|---|
[JavaScript] Set집합을 통해 중복을 없애보자 (0) | 2022.02.23 |
[JavaScript] 배열 타입 확인 메소드 (0) | 2021.09.28 |
[JavaScript] 문장과 표현식 (0) | 2021.09.28 |