๐Algorithm
ํ๋ก๊ทธ๋๋จธ[JS] > ์๋ฒ ์ฆ์ค ํ์
devWarrior
2025. 2. 16. 00:32
๋ฌธ์
https://school.programmers.co.kr/learn/courses/30/lessons/389479
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
ํ์ด
์๊ฐ๋๋ณ๋ก ํ์ฌ ์๋ฒ๊ฐฏ์๋ฅผ ํ์ ํ ์ ์๋ servers Array๋ฅผ ์์ฑํ๊ณ ์๊ฐ๋๋ณ ์ ์ ์๋ฅผ ํ์ํ๋ฉด์ ์ฆ์คํด์ผ๋๋ ์๋ฒ๊ฐ ํ์ ์ ์ด๋ฅผ servers์ ์ถ๊ฐํ๋ฉด์ ์ฆ์คํ์๋ฅผ ์นด์ดํธ ํ์ฌ ๋ต์ ๊ตฌํ ์ ์์๋ค.
function solution(players, m, k) {
let servers = Array(24).fill(0);
let answer = 0;
players.forEach((playerCnt, sTime) => {
if (parseInt(playerCnt / m) > servers[sTime]) {
let needServerCnt = parseInt(playerCnt / m) - servers[sTime];
for (let i = 0; i < k; ++i) {
if (sTime + i <= 23) {
servers[sTime + i] = servers[sTime + i] + needServerCnt;
}
}
answer += needServerCnt;
}
});
return answer;
}