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

코딩테스트 11차

by nicksoon 2024. 5. 1.
반응형

1011번 이어 풀기

1 1 1회
2 1 1 2회
3 1 1 1 3회
4 1 2 1 3회
5 1 2 1 1 4회
6 1 2 2 1 4회
7 1 2 2 1 1 5회
8 1 2 2 2 1 5회
9 1 2 3 2 1 5회
10 1 2 3 2 1 1 6회
11 1 2 3 2 2 1 6회
12 1 2 3 3 2 1 6회
13 1 2 3 3 2 1 1 7회
14 1 2 3 3 2 2 1 7회
15 1 2 3 3 3 2 1  7회
16 1 2 3 4 3 2 1 7회
17 1 2 3 4 3 2 1 1 8회
18 1 2 3 4 3 2 2 1 8회
19 1 2 3 4 3 3 2 1 8회
20 1 2 3 4 4 3 2 1 8회

 

변하는 점 나열 : 1, 2, 3, 5, 7, 10, 13, 17, ...

 

1. Y - X 구하기

2. 값의 위치 구하기

const fs = require("fs");
let input = fs.readFileSync("/dev/stdin").toString().split("\n");
// const input = ["3","0 3","0 2097152","45 50"];
let inputArr = [];
for (let i = 1; i < input.length; i++) {
    const spl = input[i].split(" ");
    const leng = Math.abs(Number(spl[1]) -  Number(spl[0]));
    inputArr.push(leng);
}

const answer = inputArr.map((n)=>{
    let arr = [1];
    let x = 1;
    const max = 2 ** 31;
    
    let anw = 0;

    for (let i = 1; i <= max; i++) {
        for (let j = 0; j < 2; j++) {
            x = x+i;
            arr.push(x);
            anw++;
            if (arr[arr.length-2] <= n && arr[arr.length-1] > n ) {
                return anw;
            }
        }
    }
    return anw;
});


console.log(answer.join("\n"));

 

이렇게 했을 때 메모리 부족/시간초과로 인해 틀렸습니다.

 

내일 다시 해 봐야 겠습니다

 

 

 

반응형

'개발 > 코딩 테스트 공부' 카테고리의 다른 글

코딩테스트 12일차  (0) 2024.05.02
코딩테스트 10일차  (0) 2024.04.30
코딩 테스트 9일차  (0) 2024.04.27
코딩 테스트 8일차  (0) 2024.04.25
코딩 테스트 7일차  (0) 2024.04.24