#P16104. [2022国家队训练南京站]distance
[2022国家队训练南京站]distance
题目描述
二维平面上有 个点,第 个点坐标为 。
同时给定 个移动向量,第 个向量为 。需要给每个点恰好分配一个向量,每个向量也恰好使用一次。也就是说,需要找到一个 阶排列 ,并让第 个点移动向量 。
移动后,希望任意两个点之间的欧几里得距离都不会变小。
如果存在这样的方案,还需要在所有满足条件的方案中,最大化所有点对移动后距离平方之和。若只输出满足距离不变小的方案但不是最优方案,可以获得一半分数。
输入格式
第一行输入一个整数 。
接下来 行,每行两个整数 ,表示点坐标。
再接下来 行,每行两个整数 ,表示移动向量。
输出格式
若不存在满足要求的方式,输出一行:
No
否则,第一行输出:
Yes
第二行输出 个整数 ,表示第 个点使用第 个向量。
注意:spj 对大小写敏感。
样例 1
输入
2
1 1
-1 -1
-1 -1
1 1
输出
Yes
2 1
样例 2
输入
5
1 1
4 5
1 4
1 9
1 9
8 1
1 9
2 6
0 8
1 7
输出
Yes
1 3 5 2 4
数据范围与限制
- ;
- 。
子任务:
| 子任务 | 分数 | 限制 |
|---|---|---|
| 1 | 20 | |
| 2 | 10 | |
| 3 | 20 | |
| 4 | 34 | |
| 5 | 16 | 无特殊限制 |