728x90

삼각형으로 나선을 그리면서 삼각형이 추가 되어지고 문제는 그려지는 삼각형 중 N번째의 사이즈에 대해서 묻는 문제였습니다. 처음에 좀 헷갈렸던게 어디서 부터 삼각형이 그려지는 였는데, 간단하게 위의 그림 처럼 그려보니 빠르게 이해가 되었습니다. 그 이후에는 삼각형의 사이즈가 이루어지는 값들을 하나씩 적어봤고 5번째 삼각형인 3부터 (0,4) .... 10번째 삼각형 12까지 (5,9)로 하나씩 더해가면서 삼각형이 이뤄지는 것을 확인 했습니다.
const fs = require('fs');
const filePath = process.platform === 'linux' ? 'dev/stdin' : '../input.txt';
const input = fs.readFileSync(filePath).toString().trim().split('\n');
//testcase
let T = parseInt(input.shift());
let list = input.map(Number);
let arr = [1, 1, 1, 2, 2];
let max = Math.max(...list);
if (max > 5) {
for (let i = 4; i < max; i++) {
arr.push(arr[i - 4] + arr[i]);
}
}
list.forEach((ele) => {
console.log(arr[ele - 1]);
});
728x90
반응형
'DEV > 알고리즘 문제 풀이' 카테고리의 다른 글
[백준] 1931 회의실 배정 (0) | 2025.02.24 |
---|---|
[백준] 13023 - 백트래킹 적용하기 (0) | 2025.01.27 |
[백준] 18511, 1260, 2606 / DFS, BFS 정리 / JavaScript (0) | 2025.01.25 |
[백준] 1912 - dp (0) | 2025.01.22 |