AT_agc025_d [AGC025D] Choosing Points
题目描述
高桥君正在研究平面上的点集。对于高桥君来说,坐标平面上的点集 $S$ 是一个*好集合*,当且仅当 $S$ 同时满足以下两个条件:
- $S$ 中任意两点之间的距离都不是 $\sqrt{D_1}$。
- $S$ 中任意两点之间的距离都不是 $\sqrt{D_2}$。
其中,$D_1, D_2$ 是高桥君指定的正整数常数。
现在,令 $X$ 为所有满足 $0 \leq i, j < 2N$ 的格点 $(i, j)$ 组成的集合。研究者高桥君已经证明,无论如何选择 $D_1, D_2$,都可以从 $X$ 中巧妙地选出 $N^2$ 个点,使得这些点构成一个好集合。然而,他并不知道具体应该如何选择。请你代替高桥君,找到 $X$ 的一个大小为 $N^2$ 的子集,使其成为好集合。
输入格式
输入通过标准输入给出,格式如下:
> $N$ $D_1$ $D_2$
输出格式
请输出你选择的满足条件的 $N^2$ 个不同的点,格式如下:
> $x_1$ $y_1$ $x_2$ $y_2$ : $x_{N^2}$ $y_{N^2}$
其中,$(x_i, y_i)$ 表示你选择的第 $i$ 个点,$x_i, y_i$ 均为整数,且满足 $0 \leq x_i, y_i < 2N$。点的输出顺序不限,若存在多组解,输出任意一组均可。
说明/提示
## 限制条件
- $1 \leq N \leq 300$
- $1 \leq D_1 \leq 2 \times 10^5$
- $1 \leq D_2 \leq 2 \times 10^5$
- 输入的所有值均为整数。
## 样例解释 1
在本例中,两点间可能的距离只有 $2$ 和 $2\sqrt{2}$,因此确实满足条件。
由 ChatGPT 4.1 翻译