문제
2차원 평면에
이 구역을 담당한 보급 부대는 모든 기지에 보급을 수행하려고 한다.
각
전쟁 중이라, 보급 부대는 병력이 전체적으로 왼쪽 위에서 오른쪽 아래로 내려가는 모양의 대열을 유지하면서 오른쪽 위 방향으로 전진해야 한다.
따라서, 아래 조건들이 모두 만족되도록 각
• 모든
• 모든
• 모든
각 기지의 위치와 보급 받을 수 있는 날짜들의 범위를 입력으로 받아 조건을 만족하면서 모든 기지에 보급을 할 수 있는지 확인하는 프로그램을 작성하라.
아래 예는
각 점이 기지에 해당하며 점 오른쪽 위에 보급을 받을 수 있는 날짜 범위가 주어져 있다.
![921cdec55192a14570826ad3e3dc6fa9_1654587023_9745.png](https://u.jungol.co.kr/problem/5124/8146cf90-31f9-464d-b597-c4a0ecff4ca8.png)
아래 그림은 위의 예에서 조건을 만족하도록 보급 날짜를 정한 예를 보여준다.
각 점 오른쪽 아래에 배정된 날짜가 표기되어 있다.
아래 그림의 곡선은 보급 부대의 대형이
![921cdec55192a14570826ad3e3dc6fa9_1654587046_3879.png](https://u.jungol.co.kr/problem/5124/94eaf2e2-6bff-4d08-bd3a-fa38b089fa77.png)
입력
첫 번째 줄에 기지의 개수
다음
제약 조건
• 주어지는 모든 수는 정수이다.
•
•
•
•
• 모든
• 모든
출력
보급 날짜 배정이 가능한 경우 첫 번째 줄에 "YES"를 출력한다.
다음 줄에 기지 번호 순서대로 배정된 날짜들을 공백을 사이에 두고 출력한다.
보급 날짜 배정이 불가능한 경우 첫 번째 줄에 "NO"를 출력한다.
부분문제
번호 | 점수 | 조건 |
---|---|---|
#1 | 13점 | |
#2 | 18점 | |
#3 | 22점 | 모든 |
#4 | 47점 | 추가 제약 조건 없음. |
예제1
6
2 6 1 3
4 1 4 6
6 5 4 6
1 3 2 5
3 2 1 3
5 4 1 6
YES
3 4 6 2 1 5
예제2
2
1 1 2 2
2 2 1 1
NO