Problem1483--「美团 CodeM 复赛」Pairsum

1483: 「美团 CodeM 复赛」Pairsum

[Creator : ]
Time Limit : 1 sec  Memory Limit : 256 MB

Description

一个长度为 LLL 的序列可以生成 L(L−1)2\frac {L(L-1)} {2}2L(L1) 对 pairsum,其中 pairsum 的定义如下:

设这个序列为 a1⋯La_{1 \cdots L}a1L,那么对于所有 1≤i<j≤L1 \leq i \lt j \leq L1i<jLai+aja_i + a_jai+aj 都是该序列的一对 pairsum。

现在要求构造一个序列满足:每个数都为 111 ~ nnn 范围内的整数,并且这 LLL 个数互不相同,L(L−1)2\frac {L(L-1)} {2}2L(L1) 对 pairsum 也互不相同。

你不需要得到最优解,只要满足 L≥n2L \geq \frac {\sqrt n} {2}L2n​​​​​ 就被认为是正确的。

输入格式

一个正整数 nnn

输出格式

第一行一个整数 LLL,表示你构造的序列长度。 第二行 LLL 个互不相同的正整数描述你构造的序列。

样例

样例输入

10

样例输出

3
1 3 7

数据范围与提示

1≤n≤5×1061 \leq n \leq 5 \times 10^61n5×106

Source/Category