탑
산악 지대에 \(N\)개의 통신탑이 서 있다. 통신탑은 서쪽에서 동쪽으로 일렬로 배치되어 있으며, 서쪽에 있는 탑부터 차례대로 \(1\)번부터 \(N\)번까지 번호가 붙어 있다.
각 통신탑은 자신의 꼭대기 높이에서 서쪽을 향해 수평으로 신호를 보낸다. 신호는 송신탑보다 낮은 탑의 위를 지나가며, 송신탑과 높이가 같거나 더 높은 탑을 만나면 그곳에 도달한다. 따라서 신호의 목적지는 송신탑의 왼쪽에 있는 탑 가운데 높이가 송신탑 이상인 가장 가까운 탑이다. 조건을 만족하는 탑이 없다면 신호는 산악 지대 밖으로 빠져나간다.
모든 통신탑에 대해 신호가 도달하는 탑의 번호를 구하여라.
입력
첫째 줄에 탑의 수 \(N\)이 주어진다.
둘째 줄에 탑들의 높이 \(H_1,H_2,\ldots,H_N\)이 왼쪽부터 순서대로 주어진다.
출력
첫째 줄에 \(N\)개의 정수를 출력한다. \(i\)번째 정수는 \(i\)번 탑에서 발사한 레이저 신호를 수신하는 탑의 번호이다. 신호를 수신하는 탑이 없다면 \(0\)을 출력한다.
제한
- \(1 \le N \le 500,000\)
- \(1 \le H_i \le 100,000,000\)
예제 입력
5
6 9 5 7 4
예제 출력
0 0 2 2 4
부분 점수
| 서브태스크 | 조건 | 배점 |
|---|---|---|
| 1 | \(N=2\) | 5 |
| 2 | 높이 수열이 단조 비감소하거나 단조 비증가한다. | 10 |
| 3 | \(N \le 5,000\) | 20 |
| 4 | 추가 제한이 없다. | 65 |
출처
Baekjoon Online Judge 2493. 탑
코멘트