๋ฐ์ํ
์ฒ์ ํ์ด
const fs = require('fs');
let input = (fs.readFileSync('./test') + '').toString().trim().split(' ');
let [n, k] = input.map((n) => parseInt(n));
let ansArr = [];
const arr = Array.from({ length: n }, (v, i) => i + 1);
for (let i = 0; i < n; i++) {
for (let j = 1; j <= k; j++) {
if (j === k) {
ansArr.push(arr.shift());
} else {
arr.push(arr.shift());
}
}
}
const ans = '<' + ansArr.join(', ') + '>';
console.log(ans);
1. n๊ฐ์ ๋ฐฐ์ด์ ๋๋ค
2. ์ด์ค๋ฐฐ์ด๋ก k๋งํผ๋์์ k๋ฒ์งธ์ ํด๋นํ์ง ์์ผ๋ฉด ๋นผ์ ๋ค์ ๋ค์ ๋ถ์ฌ์ฃผ๊ณ
3. ํด๋นํ๋ฉด ans ๋ฐฐ์ด์ ๋ฃ์ด์ค๋ค.
๊ฐ์ ํ์ด
const fs = require('fs');
let input = (fs.readFileSync('./test') + '').toString().trim().split(' ');
let [n, k] = input.map((n) => parseInt(n));
let ansArr = [];
const arr = Array.from({ length: n }, (v, i) => i + 1);
let cnt = 0;
while (arr.length > 0) {
cnt = (cnt + k - 1) % arr.length;
ansArr.push(arr[cnt]);
arr.splice(cnt, 1);
}
const ans = '<' + ansArr.join(', ') + '>';
console.log(ans);
1. cnt์ cnt+k (๋ฐฐ์ด์ด๋๊น-1) ์ ๋ฐฐ์ด๊ธธ์ด๋ก ๋๋ ๋๋จธ์ง๊ฐ์ ๋ฃ์ด์ค๋ค.
2. ๋ต ๋ฐฐ์ด์ push
3. ํด๋น๊ฐ ์ ๊ฑฐ
๐ฅณ ์๊ฐ์ ํจ์ฌ ์ ์ฝํ ์์๋ฐ!!
'๐ ์๊ณ ๋ฆฌ์ฆ > ๋ฐฑ์ค JS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] node.js/ 3986 ์ข์ ๋จ์ด (0) | 2021.10.14 |
---|---|
[๋ฐฑ์ค] node.js/ 2164 ์นด๋2 (0) | 2021.10.13 |
[๋ฐฑ์ค] JS/ 11399 ATM (0) | 2021.10.06 |
[๋ฐฑ์ค] JS/ 1157 ๋จ์ด ๊ณต๋ถ (0) | 2021.10.05 |
[๋ฐฑ์ค] JS/ 10808 ์ํ๋ฒณ ๊ฐ์ (0) | 2021.09.30 |
๋๊ธ