C++:: 프로그래머스 <같은 숫자는 싫어>

jahlee·2023년 3월 29일
0

프로그래머스_Lv.1

목록 보기
13/75
post-thumbnail

스택과 같은 구조를 사용하면 쉽게 풀수있다. 본인은 deque를 이용해 연속해서 들어오면 deque에 넣지않고 나중에 빼낼때는 들어온 순서대로 빼내었다.

#include <vector>
#include <iostream>
#include <deque>
using namespace std;

vector<int> solution(vector<int> arr) 
{
    vector<int> answer;
    deque<int> dq;
    for(auto c : arr)
    {
        if(!dq.empty() && dq.front()==c) continue;//연속되는 숫자가 들어오면
        dq.push_front(c);//밀면서 넣어준다.
    }
    while(!dq.empty())
    {
        answer.push_back(dq.back());//먼저들어온숫자 먼저
        dq.pop_back();
    }
    return answer;
}

0개의 댓글