개발자 톡
연습문제 톡
바이러스
JS
- 등록일
- 2024-11-08 14:05:22
- 조회수
- 34
- 작성자
- vavoya6324
BigInt 필수
const fs = require('fs'); let [size, base, exponential] = fs.readFileSync('input.txt', 'utf8').trim().split(' ').map(BigInt); const mod = 1000000007n; // BigInt로 변환 let stack = 1n; let result = 1n; while (exponential > 0n) { // BigInt에서 0도 0n으로 표기 if (stack === 1n) { stack = base % mod; } else { stack = (stack * stack) % mod; } if ((exponential & 1n) === 1n) result = (result * stack) % mod; exponential >>= 1n; // BigInt에서도 비트 이동 가능 } console.log(((result * (size % mod)) % mod).toString());
#바이러스