AT_agc025_d.[AGC025D] Choosing Points

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

高桥君正在研究平面上的点集。对于高桥君来说,坐标平面上的点集 SS 是一个好集合,当且仅当 SS 同时满足以下两个条件:

  • SS 中任意两点之间的距离都不是 D1\sqrt{D_1}。
  • SS 中任意两点之间的距离都不是 D2\sqrt{D_2}。

其中,D1,D2D_1, D_2 是高桥君指定的正整数常数。

现在,令 XX 为所有满足 0≤i,j<2N0 \leq i, j < 2N 的格点 (i,j)(i, j) 组成的集合。研究者高桥君已经证明,无论如何选择 D1,D2D_1, D_2,都可以从 XX 中巧妙地选出 N2N^2 个点,使得这些点构成一个好集合。然而,他并不知道具体应该如何选择。请你代替高桥君,找到 XX 的一个大小为 N2N^2 的子集,使其成为好集合。

输入格式

输入通过标准输入给出,格式如下:

NN D1D_1 D2D_2

输出格式

请输出你选择的满足条件的 N2N^2 个不同的点,格式如下:

x1x_1 y1y_1 x2x_2 y2y_2 : xN2x_{N^2} yN2y_{N^2}

其中,(xi,yi)(x_i, y_i) 表示你选择的第 ii 个点,xi,yix_i, y_i 均为整数,且满足 0≤xi,yi<2N0 \leq x_i, y_i < 2N。点的输出顺序不限,若存在多组解,输出任意一组均可。

输入输出样例

  • 输入#1

    2 1 2

    输出#1

    0 0
    0 2
    2 0
    2 2
  • 输入#2

    3 1 5

    输出#2

    0 0
    0 2
    0 4
    1 1
    1 3
    1 5
    2 0
    2 2
    2 4

说明/提示

限制条件

  • 1≤N≤3001 \leq N \leq 300
  • 1≤D1≤2×1051 \leq D_1 \leq 2 \times 10^5
  • 1≤D2≤2×1051 \leq D_2 \leq 2 \times 10^5
  • 输入的所有值均为整数。

样例解释 1

在本例中,两点间可能的距离只有 22 和 222\sqrt{2},因此确实满足条件。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页