yunicornlab

[Softeer] 소프티어 - 바이러스 JavaScript (Level 2) 본문

Coding Test/Practice

[Softeer] 소프티어 - 바이러스 JavaScript (Level 2)

yunicornlab 2024. 6. 29. 23:19
반응형

자바스크립트로 Softeer의 바이러스 라는 문제 풀기!

 

https://softeer.ai/practice/6284

 

Softeer - 현대자동차그룹 SW인재확보플랫폼

 

softeer.ai

 

const fs = require('fs');
const [k, p, n] = fs.readFileSync('/dev/stdin', 'utf8').trim().split(' ').map(v => BigInt(v));

let result = k;
for (let i=1; i<parseInt(n)+1; i++) {
    result = (result * p) % BigInt(1000000007);;
}
console.log(parseInt(result))

 

제약 조건이 중요한 문제였다.

처음에는 와 문제 쉽다 생각하고 아래처럼 풀고 제출했는데,

const fs = require('fs');
const [k, p, n] = fs.readFileSync('/dev/stdin', 'utf8').trim().split(' ').map(v => BigInt(v));

console.log(k * Math.pow(p, n) % 1000000007)

 

완전 광탈...ㅎㅎㅎㅎㅎㅎㅎ

 

BigInt 사용 + 시간복잡도 고려해야 성공하는 문제였다.

이 문제 풀면서 시간복잡도를 고려해야하는 것이 정말 중요함을 깨달았다.

반응형