[백준] 17298 - 오큰수
1. 문제 이해 하나의 수열이 주어지면, 각 수열의 숫자의 '오큰수' 를 구하는 문제이다. 오큰수란? 자신의 오른쪽에 있는 숫자 중 자신보다 크면서, 그 중 가장 왼쪽에 있는 숫자를 의미한다. 오큰수가 존재하지 않으면 -1 이다. 수열의 크기가 4인 경우, 각 숫자의 오큰수를 순서대로 출력하는 문제이다. 2. 문제 풀이 수열의 크기가 최대 1,000,000 이므로, O(N^2) 의 풀이로 풀 수가 없다. 즉, 최대한 선형 시간 만큼의 시간이 걸리도록 알고리즘을 작성해야 한다. 만약 예제가 [9, 5, 4, 7] 이라면 오큰수는 순서대로 (-1, 8, 8, -1) 이다. 이 때, 숫자5는 자신보다 작은 숫자 4를 알 필요가 없다. 마찬가지로 숫자 9는 숫자 4를 알 필요가 없다. 왜냐하면 이미 5라는 숫자..
Algorithm Problem/백준
2022. 6. 27.