Computer Science/Algorithm

BOJ 17298: 오큰수

무니화니 2021. 12. 25. 18:43

골드 4 문제에 도전을 해본다!

BOJ 17298: 오큰수

당연하게도, 이 문제를 곧이곧대로 반복문 두개로 풀면 시간 초과가 날 것이다.

수열의 크기가 100만까지 커질 수 있지 않는가!

그렇기에, stack을 이용해서 풀었다.

 

 

여기서 stack을 구현하는 방식은, 간단하게 말해서 오큰수를 찾지 못하면 stack에 넣고, 오큰수를 찾을 수 있는 경우에서는 stack에서 가능한 만큼 지워주는 방식으로 구현한다.

 

처음에 -1을 모든 칸에 넣고, stack에 값이 있는지와 없는지로 나누고, stack에 값이 있는 경우에는 stack에서 top이 data의 i번째와 만났을 때 stack이 처리 가능한지로 나눠서 푼다.

 

어렵다 어려워.!

'Computer Science > Algorithm' 카테고리의 다른 글

BOJ 6588: 골드바흐의 추측  (0) 2021.12.25
BOJ 2609: 최대공약수와 최대공배수  (0) 2021.12.25
BOJ 10799: 쇠막대기  (0) 2021.12.25
BOJ 9012 괄호  (0) 2021.12.24
BOJ 10655: 마라톤 1  (0) 2021.12.21