cgy12306

[프로그래머스] 기능개발 본문

Algorithm/C++

[프로그래머스] 기능개발

cgy12306 2021. 9. 10. 16:16
#include <string>
#include <vector>
#include <queue>
#include <iostream>
using namespace std;

vector<int> solution(vector<int> progresses, vector<int> speeds) {
    vector<int> answer;
    queue<int> q;
    
    for(int i=0;i<progresses.size();i++){
        q.push(100-progresses[i]);
    }
    
    for(int i=0;i<q.size();i++){
        if(q.front() % speeds[i] ==0){
            q.push(q.front()/speeds[i]);
            q.pop();
        }
        else{
            q.push(q.front()/speeds[i]+1);
            q.pop();
        }
        
    }
    int M=q.front(), cnt=1;
    q.pop();

    while(!q.empty()){    
        while(M >= q.front() && !q.empty()){
            cnt++;
            q.pop();
        }
        answer.push_back(cnt);
        cnt=0;
        M = q.front();
    }

    return answer;
}
Comments