코딩테스트/프로그래머스
[Level 2][C++] 기능개발
MJ.Lee
2024. 10. 10. 22:36
#include <string>
#include <vector>
using namespace std;
vector<int> solution(vector<int> progresses, vector<int> speeds) {
vector<int> answer;
int days=1; //날짜 1일 부터 시작.
int idx=0; //맨 앞에 프로젝트 부터 시작
while(true)
{
int count = 0; //이날 배부된 프로젝트 개수.
while(progresses[idx]+days*speeds[idx]>=100)
{
idx++; //다음 프로젝트로 넘어감. 끝난 프로젝트가 다 배부될 때까지.
count++;
if(idx==progresses.size()) //프로젝트가 모두 마감되면 나온다.
break;
}
if(count>0) //프로젝트 완료된 것이 있을 때만 기록한다.
answer.push_back(count);
if(idx==progresses.size()) //프로젝트가 모두 마감되면 반복문을 마저 벗어난다.
break;
days++;
}
return answer;
}