프로그래머스 탑
문제
문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/42588
풀이
맨 앞에 탑은 무조건 0을 넣고 그뒤에 탑은 반복문을 통해 자신보다 큰 탑이 있는지 검색하고 발견시 해당 탑의 인덱스를 푸쉬하고 반복문을 다돌았음에도 큰탑이 없다면 정답배열에 0을 푸쉬하도록 했다.
#include <string>
#include <vector>
using namespace std;
vector<int> solution(vector<int> heights)
{
vector<int> answer;
int j = 0;
for (int i = 0; i < heights.size(); i++)
{
if (i == 0)
{
answer.push_back(0);
}
else
{
for (j = i; j > -1; j--)
{
if (heights[i] < heights[j])
{
answer.push_back(j+1);
break;
}
else if (j == 0)
{
answer.push_back(0);
}
}
}
}
return answer;
}
댓글남기기