#P7510. 铃解缀

    ID: 8402 远端评测题 2000ms 128MiB 尝试: 0 已通过: 0 显示难度省选/NOI− 上传者: 标签>数学2021Special Judge构造

铃解缀

背景

题目:数对构造。

题目描述

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

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

输入格式

一行一个正整数 nn。

输出格式

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

你需要保证 nn 对 (ai,bi)(a_i,b_i) 按 ai−bia_i - b_i 的大小顺次构成一个 1∼2n1 \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)}:n≤5n \le 5。

Subtask 2 (20 pts)\texttt{Subtask 2 (20 pts)}:n≤105n \le 10 ^ 5。

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

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

对于 100%100\% 的数据,1≤n≤1061 \le n \le 10^6。

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

CoOI Round 1 B 题。