https://school.programmers.co.kr/learn/courses/30/lessons/42584?language=cpp
#include <string>
#include <vector>
using namespace std;
vector<int> solution(vector<int> prices) {
vector<int> answer(prices.size());
int cur;
for (int i = 0; i < prices.size(); i++)
{
int j = i;
while (++j < prices.size())
if (prices[i] > prices[j])
break ;
if (j == prices.size()) // 떨어진 적이 없으면
answer[i] = j - i - 1;
else
answer[i] = j - i;
}
return answer;
}
싹 다 오름차순으로 들어오는 테케가 없는지 별 차이가 없다. 벡터 사이즈를 변수에 넣어주고 사이즈만큼 벡터를 선언하는 동일한 조건에서 비교했다. 아래 스택 코드도 첨부한다.
#include <string>
#include <vector>
#include <stack>
using namespace std;
vector<int> solution(vector<int> prices) {
vector<int> answer(prices.size());
stack<int> s;
for(int i = 0;i < prices.size(); i++)
{
while(!s.empty() && prices[s.top()] > prices[i])
{
answer[s.top()] = i - s.top();
s.pop();
}
s.push(i);
}
while(!s.empty())
{
answer[s.top()] = prices.size() - s.top() - 1;
s.pop();
}
return answer;
}
'<algorithm> > 프로그래머스_고득점 kit' 카테고리의 다른 글
[프로그래머스 고득점kit] 정렬_가장 큰 수(c++) (0) | 2023.04.16 |
---|---|
[프로그래머스 고득점kit] 정렬_k번째수(c++) (0) | 2023.04.15 |
[프로그래머스 고득점kit] 스택/큐_다리를 지나는 트럭(c++) (0) | 2023.04.12 |
[프로그래머스 고득점kit] 스택/큐_프린터(c++) (0) | 2023.04.09 |
[프로그래머스 고득점kit] 스택/큐_올바른 괄호(c++) (0) | 2023.04.09 |