최대 1 분 소요

Question

Q


Solution

  • 이중for문으로 현재 가격과 다음 가격을 비교한다.
  • 다음 가격과 비교 할때마다 for문을 빠져 나올때까지 time을 증가시키고 끝나면 answer에 push 한다.
  • 현재 가격보다 낮으면 break 한다.

  • 추가: 본 문제는 stack을 이용하여 풀도록 의도하는 것 같다. 가능하다면 stack으로 풀어보도록 하자.

Cord

#include <string>
#include <vector>

using namespace std;

vector<int> solution(vector<int> prices) 
{
    vector<int> answer;
    
    for(int i = 0; i < prices.size(); i++)
    {
        int time = 0;
        for(int j = i + 1; j < prices.size(); j++)
        {
            time++;
            
            // 현재 가격 'i'와 다음 가격들'j' 비교
            if (prices[i] > prices[j])
            {
                break;
            }
        }
        answer.push_back(time);
    }
    
    return answer;
}

Result

Result