#P16159. [ICPC 2016 NAIPC] Symmetry

[ICPC 2016 NAIPC] Symmetry

题目描述

你百无聊赖,无事可做。你注意到面前墙上有一组点状图案,便开始琢磨起来。这些点没有明显的对称模式。随着时间的推移,这变得越来越令人烦躁,于是你考虑添加更多的点来满足你对平衡的追求。在此练习中,你需要用计算机程序来解决这个问题。

:::align{center} :::

给定一个点集,其坐标范围为 20,000-20,00020,00020,000,请确定需要添加的最少点数,使得整个点集具有某种对称性。对称性可以是关于点的中心对称,也可以是关于直线的轴对称。如果是中心对称,对称中心不必是数据中的点,甚至不必是整数坐标点。如果是轴对称,对称轴可以是任意角度。添加的点的坐标可以超出 20,000-20,00020,00020,000 的范围。

输入格式

每个输入包含单个测试用例。请注意,你的程序可能会在不同输入上多次运行。输入的第一行包含一个整数 nn1n1,0001 \leq n \leq 1{,}000),表示点的数量。接下来的 nn 行,每行包含两个空格分隔的整数 xxyy20,000x,y20,000-20{,}000 \leq x, y \leq 20{,}000),表示一个点的坐标。所有点的位置保证互不相同。

输出格式

输出一个整数,表示需要添加的最少点数,使得所有点关于某点或某直线对称。

4
0 0
1000 0
0 1000
1000 1000
0
11
0 0
70 100
24 200
30 300
480 400
0 100
0 200
0 400
100 0
300 0
400 0
6

提示

翻译由 DeepSeek V3.2 完成