백준 17298 - 오큰수
🔐 백준 17298 - 오큰수
https://www.acmicpc.net/problem/17298
🔑 풀이
수열의 각 원소에 대해 오른쪽에 있으면서 각 원소보다 큰 가장 왼쪽에 있는 수를
구하는 문제이다. 결과를 저장할 vector와 stack을 하나씩 사용하였다.
수의 차례(index)를 저장하기 위해 pair로 인덱스를 같이 저장해주었다.
알고리즘
1. 차례대로 수를 하나씩 받아온다.
2. 스택의 top이 자신보다 작으면 그 수는 스택 top의 오큰수이므로 결과 배열에 저장한다.
3. top을 pop 해준다.
4. 2~3을 스택이 비어있지 않고, top이 현재 수보다 작을때까지 반복한다.
5. 현재 수를 push 한다.
Leave a comment