
目录
- [AT_arc205_c [ARC205C] No Collision Moves](#AT_arc205_c [ARC205C] No Collision Moves)
- 过程
AT_arc205_c [ARC205C] No Collision Moves
题目描述
数轴上有 N N N 个人。
第 i i i 个人( 1 ≤ i ≤ N 1\le i\le N 1≤i≤N)初始时位于坐标 S i S_i Si,目标是最终移动到坐标 T i T_i Ti。保证 S 1 , S 2 , ... , S N , T 1 , T 2 , ... , T N S_1,S_2,\ldots,S_N,T_1,T_2,\ldots,T_N S1,S2,...,SN,T1,T2,...,TN 都互不相同。
你需要固定一个排列 P = ( P 1 , P 2 , ... , P N ) P=(P_1,P_2,\ldots,P_N) P=(P1,P2,...,PN),即对 ( 1 , 2 , ... , N ) (1,2,\ldots,N) (1,2,...,N) 的一种排列,并依次进行 N N N 次操作。在第 i i i 次操作( 1 ≤ i ≤ N 1\le i\le N 1≤i≤N)中,你将第 P i P_i Pi 人从坐标 S P i S_{P_i} SPi 沿着数轴的最短路径移动到坐标 T P i T_{P_i} TPi。但是,如果此移动路径上还有其他人,则会发生冲突。
请你判断是否存在一个 P P P,使得在操作过程中不会发生冲突。如果存在,给出一个可行的 P P P。
输入格式
输入按下述格式从标准输入中给出:
N N N
S 1 S_1 S1 T 1 T_1 T1
S 2 S_2 S2 T 2 T_2 T2
⋮ \vdots ⋮
S N S_N SN T N T_N TN
输出格式
如果不存在使得没有冲突的 P P P,输出 No。
否则,输出 Yes,并在同一行输出一个可行的 P P P(即 P 1 P_1 P1 P 2 P_2 P2 ... \ldots ... P N P_N PN)。
如果有多个满足条件的 P P P,输出任意一种即可。
输入输出样例 #1
输入 #1
4
1 3
2 4
7 5
8 10
输出 #1
Yes
3 2 1 4
输入输出样例 #2
输入 #2
2
1 3
4 2
输出 #2
No
输入输出样例 #3
输入 #3
5
19 17
1 10
9 14
3 11
8 13
输出 #3
Yes
3 5 1 4 2
说明/提示
样例解释 1
如果 P = ( 3 , 2 , 1 , 4 ) P=(3,2,1,4) P=(3,2,1,4),则 N N N 次操作依次如下:
- 第 1 次操作:第 3 个人从坐标 7 7 7 移动到 5 5 5,其余三人还在 1 , 2 , 8 1,2,8 1,2,8,无冲突。
- 第 2 次操作:第 2 个人从坐标 2 2 2 移动到 4 4 4,其余三人还在 1 , 5 , 8 1,5,8 1,5,8,无冲突。
- 第 3 次操作:第 1 个人从坐标 1 1 1 移动到 3 3 3,其余三人还在 4 , 5 , 8 4,5,8 4,5,8,无冲突。
- 第 4 次操作:第 4 个人从坐标 8 8 8 移动到 10 10 10,其余三人还在 3 , 4 , 5 3,4,5 3,4,5,无冲突。
因此,输出 P = ( 3 , 2 , 1 , 4 ) P=(3,2,1,4) P=(3,2,1,4) 即可。
其它可行答案包括 P = ( 4 , 3 , 2 , 1 ) , ( 2 , 1 , 3 , 4 ) P=(4,3,2,1),(2,1,3,4) P=(4,3,2,1),(2,1,3,4) 等。
样例解释 2
不存在使得不会发生冲突的 P P P。因此输出 No。
数据范围
- 1 ≤ N ≤ 2 × 10 5 1\le N\le 2\times 10^5 1≤N≤2×105
- 1 ≤ S i , T i ≤ 10 9 1\le S_i, T_i \le 10^9 1≤Si,Ti≤109
- S 1 , S 2 , ... , S N , T 1 , T 2 , ... , T N S_1,S_2,\ldots,S_N,T_1,T_2,\ldots,T_N S1,S2,...,SN,T1,T2,...,TN 均互不相同。
- 所有输入值均为整数。
由 ChatGPT 5 翻译
过程
因为所有人的起点和终点是都不重复的,如果起点进行升序排序,然后移动左边,在移动右边,路径不会因为交叉冲突。
而且题解没有无解情况,样例所有 No 因为路径交叉排序还是冲突的,所以需要按起点排序。
所以我们得出结论。
把所有人按起点坐标从小到大排序,就是合法答案。
复杂度大约 O ( n log n ) O(n\log n) O(nlogn)。