#P14145. 荒谬

荒谬

题目描述

给定 nn,构造一张 nn 个点的简单有向无环图,使得距离为 22 的点对的个数不少于 n(n1)2nlog2n\dfrac{n(n-1)}2-n\left\lceil\log_2n\right\rceil

点对 (u,v)(u,v) 之间的距离指 uuvv 的最短路长度。若 uu 无法到达 vv,则距离为 100100100^{100}

输入格式

一行一个正整数 nn

输出格式

第一行一个整数 m(0mn(n1)2)m(0\le m\le \frac{n(n-1)}{2}),表示你构造的图的边数。

之后 mm 行,每行两个数 u,vu,v,表示你的构造的图中的一条边。你需要保证你构造的图是一张简单有向无环图,即没有重边也没有环。

3

2
1 2
2 3

提示

样例解释

样例中唯一距离为 22 的点对是 (1,3)(1,3),容易证明不存在满足条件的点对个数比 11 大的方案。

数据范围

1n20001\le n\le 2000

评分方式

若你的程序给出的图不为简单有向无环图,你该测试点的得分将为 00

否则设你的程序给出的图中距离为 22 的点对数为 xx。若 $x\ge\dfrac{n(n-1)}2-n\left\lceil\log_2n\right\rceil$,你将获得该测试点的满分;若 $\left\lfloor\dfrac{n-1}{2}\right\rfloor\times \left\lceil\dfrac{n-1}{2}\right\rceil\le x < \dfrac{n(n-1)}2-n\left\lceil\log_2n\right\rceil$,你将获得该测试点 20%20\% 的分数。