luogu#P7510. 铃解缀

铃解缀

题目背景

题目:数对构造。

题目描述

12n1 \sim 2n 的整数分为 nn 个有序数对 (ai,bi)(a_i,b_i)1in1 \le i \le n)。你需要使得对于任意不大于 nn 的正整数 ii,有 aibi=ia_i - b_i = i

给定 nn,请你给出一种构造方案。若无解则输出 -1 0

输入格式

一行一个正整数 nn

输出格式

若无解,输出一行两个整数 -1 0。否则输出 nn 行,每行两个 12n1 \sim 2n 内的正整数,表示 (ai,bi)(a_i,b_i)

你需要保证 nn(ai,bi)(a_i,b_i)aibia_i - b_i 的大小顺次构成一个 12n1 \sim 2n 整数的排列。

2

-1 0

5

2 1
9 7
6 3
8 4
10 5

提示

样例解释

对于第一组样例,显然这个样例无解。

对于第二组样例,样例输出给出了一种可行的构造方案。

数据范围及约定

本题使用捆绑测试。

Subtask 1 (20 pts)\texttt{Subtask 1 (20 pts)}n5n \le 5

Subtask 2 (20 pts)\texttt{Subtask 2 (20 pts)}n105n \le 10 ^ 5

Subtask 3 (30 pts)\texttt{Subtask 3 (30 pts)}nn 为素数。

Subtask 4 (30 pts)\texttt{Subtask 4 (30 pts)}:无特殊限制。

对于 100%100\% 的数据,1n1061 \le n \le 10^6

这道题用来锻炼数学思维和构造能力,但不适合在 OI 比赛中。

CoOI Round 1 B 题。