[伯俊1158]ジョセフ問題withnodejs
📌 質問する
https://www.acmicpc.net/problem/1158
📌 に答える
思いついた
원형 큐
質問に答えました.Array.from
書きやすいです.📌 コード#コード#
const fs = require('fs');
const stdin = (process.platform === 'linux' ? fs.readFileSync('/dev/stdin').toString().trim() : `7 3`).split('\n');
const input = (() => {
let line = 0;
return () => stdin[line++];
})();
const [N, K] = input().split(' ').map(Number);
const personCds = Array.from(Array(N), (value, idx) => idx + 1);
const answer = [];
while (personCds.length) {
for (let i = 0; i < K; i++) {
personCds.push(personCds.shift());
}
answer.push(personCds.pop());
}
console.log(`<${answer.join(', ')}>`);
📌 に感銘を与える
実は今日解いた問題は前に解いた問題です.
以前に解いた1からNの初期化方式はこうしていた.
for (let i = 1; i <= N; i++) {
queue.push(i);
}
でもアリーfromで書けると知って、応用してみました!const personCds = Array.from(Array(N), (value, idx) => idx + 1);
次回もすぐに応用して欲しい!🙏🏻Reference
この問題について([伯俊1158]ジョセフ問題withnodejs), 我々は、より多くの情報をここで見つけました https://velog.io/@hsk10271/백준-1158-요세푸스-문제-with-node.jsテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol