解题思路
把数组中的数从小到大记为 b1≤b2≤⋯≤bn。
题目要求:任取三个不同下标,对应三个数排序后为 x≤y≤z,都要满足
x+y≤z。
这等价于:对于每个位置 k≥3,必须有
P4628.第2题-这里没有三角形
题目内容
给定一个正整数 n(3≤n≤2×105) ,表示需要构造的数组长度;构造一个长度为 n 的数组 {a1,a2,...,an},使其满足以下条件:
-
1≤ai≤109;
-
任意选择三个不同下标 i,j,k,设相应的数组元素按非降序排列为 x≤y≤z,则有 x+y≤z,即无法组成三角形。
输入描述
在一行上输入一个整数 n(3≤n≤2×105) ,表示数组长度。
输出描述
若存在满足条件的数组,则输出一行 n 个整数 a1,a2,...,an;否则,输出 −1 。
如果存在多个解决方案,您可以输出任意一个,系统会自动判定是否正确。注意,自测运行功能可能因此返回错误结果,请自行检查答案正确性。
样例1
输入
3
输出
1 2 4