#include <string>
#include <vector>
 
using namespace std;
 
 
vector<int> solution(vector<int> progresses, vector<int> speeds) 
{
    vector<int> answer = {};
    vector<int> vecTime = {};
    int iAnswer = 0;
    int iHighTime = 0;
    int iNumber = 0;
 
    for (int i = 0; i < progresses.size(); ++i)
    {
        progresses[i] = 100 - progresses[i];
 
 		// 0으로 딱 떨어질 경우 그대로 나머지가 남을 경우 1일 추가
        if (progresses[i] % speeds[i] == 0)
            iNumber = progresses[i] / speeds[i];
 
        else
            iNumber = progresses[i] / speeds[i] + 1;
 
 
        vecTime.push_back(iNumber);
    }
 
    for (int i = 0; i < vecTime.size(); ++i)
    {
        if (vecTime[i] >= iHighTime)
        {
            iHighTime = vecTime[i];
            answer.push_back(1);
        }
 
        else
            ++answer.back();
    }
 
    return answer;
}

잘되다가 중간에 딱 하나가 뭔가 걸리길래 흠 했는데...

나눴을 때 iNumber의 나머지가 남아있을 때가 문제였다.

시간이 비슷할 때 나머지가 남아있는 얘가 하루 더 걸리는데 그걸 체크를 안 해놨네

 

오늘은 3차 맞았더니 너무 피곤하다... 오늘은 싹다 패스..

+ Recent posts