백준 17298 - 오큰수

🔐 백준 17298 - 오큰수

https://www.acmicpc.net/problem/17298


🔑 풀이

수열의 각 원소에 대해 오른쪽에 있으면서 각 원소보다 큰 가장 왼쪽에 있는 수를

구하는 문제이다. 결과를 저장할 vectorstack을 하나씩 사용하였다.

수의 차례(index)를 저장하기 위해 pair로 인덱스를 같이 저장해주었다.

알고리즘

1. 차례대로 수를 하나씩 받아온다.

2. 스택의 top이 자신보다 작으면 그 수는 스택 top의 오큰수이므로 결과 배열에 저장한다.

3. top을 pop 해준다.

4. 2~3을 스택이 비어있지 않고, top이 현재 수보다 작을때까지 반복한다.

5. 현재 수를 push 한다.


🧩코드

Categories:

Updated:

Leave a comment