atcoder#AGC050A. [AGC050A] AtCoder Jumper

[AGC050A] AtCoder Jumper

题目描述

本サイトのこの部分にお気づきでしょうか。

これらの番号は、どのページからどのページへも少ないクリック数で到達できるように、なおかつ各ページのリンク数が多くなりすぎないように配慮して選ばれています。 この問題では、似たようなことを 1 1 ページあたり リンク 2 2 で実現していただきましょう。

すぬけ君は、1 1 から N N までの番号が振られた N N ページからなるサイトを作りました。 あなたには、各 i i (1  i  N 1\ \leq\ i\ \leq\ N ) について 2 2 つの整数 ai, bi a_i,\ b_i (1  ai, bi  N 1\ \leq\ a_i,\ b_i\ \leq\ N ) を選び、ページ i i にページ ai a_i へのリンクとページ bi b_i へのリンクを貼ることで、以下の制約を満たしていただきます。

  • どのページから他のどのページへも、リンクを 10 10 回以下クリックすることで到達可能でなければならない。

この問題の制約の下で、これが常に可能であることは証明可能です。

输入格式

入力は標準入力から以下の形式で与えられる。

N N

输出格式

答えを以下の形式で出力せよ。

a1 b1 a_1\ b_1 : : aN bN a_N\ b_N

複数通りの答えが考えられる場合は、そのどれを出力してもよい。

题目大意

你有注意过 AtCoder 的这个部分吗?

这里的序号,是在考虑了提高任意两个页面间跳转的速度和每个页面不显示太多的选项这两个因素,并精心考虑之后选出来的。在这个问题,你需要在每个页面只有 两个链接 的前提下实现类似的功能。

Snuke 制作了一个有 NN 个页面的网站,分别标号为 11NN 。对每个 i(1iN)i(1\le i \le N) ,选出两个正整数 aia_ibi(1aiN)b_i(1\le a_i \le N) ,把通往第 aia_i 个页面和通往第 bib_i 个页面的链接加入页面 ii 。这个网站必须满足以下的要求:

  • 你必须能够在最多点击 1010 个链接后从任意的一个页面跳转到任意的另一个页面。

在这个问题的限制条件下,我们可以证明这是一定可行的。

输入格式

一行一个整数 NN,代表页面的个数。

输出格式

输出 NN 行,每行两个整数,第 ii 行的两个整数分别代表 aia_ibib_i

如果有多个答案,你可以输出任意一个。

说明/提示

数据范围

  • 1N10001 \le N \le 1000

样例解释 1

Snuke 做了一个只有一个页面的网站。这个页面的两个链接都指向它自己。

样例解释 2

这样设置链接的话,不管哪个页面都有直接指向其他所有页面的链接。

1
1 1
3
2 3
1 3
1 2

提示

制約

  • 1  N  1000 1\ \leq\ N\ \leq\ 1000

Sample Explanation 1

すぬけ君は 1 1 ページだけの見事なサイトを作りました。 自分自身へのリンクも 2 2 つあります。

Sample Explanation 2

ここでは、どのページからどのページへも直接のリンクで到達できます。