문제 링크
https://www.acmicpc.net/problem/1158
풀이
const fs = require('node:fs');
const input = fs.readFileSync('예제.txt','utf8').split(' '); // 백준 경로:'/dev/stdin'
const [n, k] = input.map(Number);
const circle = [];
const result = [];
for(let i=1;i<=n;i++) circle.push(i); //[1,2,3,4,5,6,7]
//k번째 사람을 제거한다.
//제거하고, 그 시점부터 다시 k번째
let remove = 0;
while(circle.length>0){
remove = (remove + k-1) % circle.length;
result.push(circle.splice(remove,1)[0]);
}
console.log(`<${result.join(', ')}>`);
'알고리즘 > 자료구조' 카테고리의 다른 글
Javascript에서 인접리스트 구현하기 (1) | 2025.03.06 |
---|---|
[백준] 2346번: 풍선 터뜨리기 (실버 3) - Javascript 풀이 (시간초과) (0) | 2025.02.27 |
[백준] 2164번: 카드2 (실버4) - Javascript 풀이 (0) | 2025.02.09 |
[프로그래머스] Lv 2. 올바른 괄호 - Javascript 풀이 (0) | 2025.02.07 |
[프로그래머스] Lv 2. 기능 개발 - Javascript 풀이 (1) | 2025.02.05 |