반응형
1011번 이어 풀기
for (let k = 0; k < inputArr.length; k++) {
const n = inputArr[k];
let last = 1;
let secondLast = 0;
let x = 1;
const max = 2 ** 31;
let anw = 0;
let isCheck = false;
for (let i = 1; i <= max; i++) {
for (let j = 0; j < 2; j++) {
x = x+i;
secondLast = last;
last = x;
anw++;
if (secondLast <= n && last > n ) {
console.log(anw);
isCheck = true;
break;
}
}
if(isCheck){
break;
}
}
}
타임 아웃으로 인해 아래 코드를 적용을 해 보았습니다.
for (let k = 0; k < inputArr.length; k++) {
const length = inputArr[k];
let pos = 1;
let turn = 1;
let pos_pow = 0;
while(pos < length) {
pos_pow++;
turn++;
pos += pos_pow;
if(pos >= length) break;
turn++;
pos += pos_pow;
if(pos >= length) break;
}
if(pos > length) turn--;
console.log(turn);
}
하지만 이 코드를 돌리게 되면 틀렸다고 나옵니다.
그 원인은 다음에 찾아 보기
반응형
'개발 > 코딩 테스트 공부' 카테고리의 다른 글
코딩테스트 11차 (0) | 2024.05.01 |
---|---|
코딩테스트 10일차 (0) | 2024.04.30 |
코딩 테스트 9일차 (0) | 2024.04.27 |
코딩 테스트 8일차 (0) | 2024.04.25 |
코딩 테스트 7일차 (0) | 2024.04.24 |