코드
#include <vector>
#include <queue> // 큐
using namespace std;
vector<int> solution(vector<int> progresses, vector<int> speeds) {
vector<int> answer;
queue<int> q;
for(int i=0;i<speeds.size();i++){ // 작업일 계산 후 큐에 삽입
if((100-progresses[i])%speeds[i]==0){
q.push((100-progresses[i])/speeds[i]);
}else{
q.push((100-progresses[i])/speeds[i]+1);
}
}
int count=0; // 같은 작업 일수 및 적은 일수 카운트
int num=q.front();
while(!q.empty()){
if(num>=q.front()){
count++;
q.pop();
}else{
answer.push_back(count);
count=1;
num=q.front();
q.pop();
}
}
answer.push_back(count);
return answer;
}
'C++ > programmers 코딩테스트(level 2) C++' 카테고리의 다른 글
[C/C++] programmers Level 2 N개의 최소공배수 (0) | 2023.09.30 |
---|---|
[C/C++] programmers Level 2 주식가격 (0) | 2023.09.30 |
[C/C++] programmers Level 2 하노이의 탑 (0) | 2023.09.28 |
[C/C++] programmers Level 2 피보나치 수 (0) | 2023.09.27 |
[C/C++] programmers Level 2 숫자의 표현 (0) | 2023.09.25 |