안녕하세요
[node.js] 10757 큰 수 A + B (자바스크립트) 기본수학단계1 본문
10757 큰 수 A+B
아래와 같이 큰 수 a,b를 입력 받아 a+b를 출력합니다.
9223372036854775807 9223372036854775808
결과
18446744073709551615
제출한 답
const [a, b] = require("fs").readFileSync("dev/stdin").toString().split(" ").map(BigInt);
console.log((a + b).toString());
- .map(BigInt)
자바스크립트는 정수형의 수는 2^53-1 까지만 온전하게 저장할 수 있습니다.
이보다 큰 수의 경우에는 숫자 끝에 'n'을 붙여 100n과 같은 형태로 이용하는데 이를 위한 함수가 BigInt입니다.
100n 은 BitInt(100) 과 같습니다. - console.log((a + b).toString());
결과값인 18446744073709551615n 의 typeof 함수의 출력값은 bigint 입니다.
BigInt를 나타내는 n을 없애기 위해서는 toString() 함수를 이용합니다.
18446744073709551615n 을 toStirng()으로 변환하게 되면 type이 string으로 변하면서 n 이 사라집니다.
+
let bbb = 123n;
console.log(typeof bbb);
>> bigint
VSCode에서 123n 을 입력해 보면 n 이 다른 색상으로 처리가 된 것을 볼 수 있습니다.
'백준 자바스크립트' 카테고리의 다른 글
[node.js] 2581 소수 (자바스크립트) 기본수학단계2 /cfr (0) | 2022.06.08 |
---|---|
[node.js] 1978 소수 찾기 (자바스크립트) 기본수학단계2 (0) | 2022.06.06 |
[node.js] 2839 설탕배달 (자바스크립트) 기본수학단계1 (0) | 2022.06.04 |
[node.js] 1110 더하기 사이클 (자바스크립트) 문자열 단계 (0) | 2022.05.31 |
[node.js] 2775 부녀회장이 될테야 (자바스크립트) 2차원 배열 기본 수학 단계 (0) | 2022.05.24 |