본문 바로가기
개발/코딩 테스트 공부

코딩테스트 12일차

by nicksoon 2024. 5. 2.
반응형

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