프로그래머스 C++
프로그래머스 서버 증설 횟수 C++
Srff5123
2025. 2. 25. 20:22
728x90
문제
현재 온라인 게임을 운영중인 사람이 있다.
같은 시간대에 게임을 이용하는 사람이 m명 늘어날 때마다 서버 1대가 추가로 필요하다
어느 시간대의 이용자가 m명 미만이라면 서버 증설이 필요하지 않지만
n*m, (n+1) * m명 미만이라면 최소 n대의 증설된 서버가 운영 중이어야 한다.
한번 증설한 서버는 k시간 동안 운영 되고 사라진다.
하루동안 게임 이용자가 게임을 하기 위해 서버를 최소 몇 번 증설해야 하는지 리턴해라
0~23시까지의 시간대별 게임 이용자 수를 나타내는 players 1차원 정수 배열과
서버 한대로 감당할 수 있는 이용자 수를 나타내는 정수 m
서버 한대가 운영 가능한 시간 정수 k가 매개변수로 주어진다.
풀이
주어진 시간 동안 필요한 서버 수를 충족시키기 위해 서버를 증설하는 문제로
현재 시간 이용자 players[t] / m 를 해주어 각 시간 대에 현재 필요한 서버 수를 구해준다.
운영 시간에 따라 서버 수가 부족한 시간이 있다면 추가로 서버를 증설하고
증설한 수를 answer에 +를 해준다.
728x90