반응형
https://school.programmers.co.kr/learn/courses/30/lessons/181918
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
답
#include <string>
#include <vector>
using namespace std;
vector<int> solution(vector<int> arr) {
vector<int> stk;
int i=0;
while(1){
if(i>=arr.size()){
break;
}
if(stk.empty()==true){
stk.push_back(arr[i]);
i+=1;
}
else{
if(stk.back()<arr[i]){
stk.push_back(arr[i]);
i+=1;
}
else{
stk.pop_back();
}
}
}
return stk;
}
정수변수 i를 만들어주고 0으로 초기화해준다.
while로 문한반복하게 만든다.
문제에 조건대로 if문을 만들어준다.
그에따른 행동을 만들어준다.
참고
vector이 비었는 지 확인할대믄ㄴ
vectorname.empty()
이렇게 쓰면된다.
vector이 비었으면 ture를 반환하녹 그렇지 않으면 false를 반호나해준다.
vector에서 마지막 값을 배는 방버은
vectorname.pop_back()
이렇게 쓰는 것이다.
끝
반응형
'c++ > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 빈 배열에 추가, 삭제하기(c++) (0) | 2023.12.25 |
---|---|
[프로그래머스] l로 만들기(c++) (0) | 2023.12.25 |
[프로그래머스] 할 일 목록(c++) (0) | 2023.12.24 |
[프로그래머스] 배열 만들기 6(c++) (0) | 2023.12.24 |
[프로그래머스] 전국 대회 선발 고사(c++) (0) | 2023.12.24 |