链接:Wrong Answer
Wrong Answer
解析:
构造题
官方题解:
第一个数放-1,后面长为len,和为sum,每个都不为负数
k=(sum−1)(len+1)−sum⋅len=sum−len−1
随便代入一个len,构造输出,因为|ai|≤10^6,len>1000
ac:
#include<bits/stdc++.h>
#define ll long long
#define MAXN 2005*2
using namespace std;
void print(int k,int n)
{
printf("-1 ");
for(int i=0;i<k;i++)
{
if(n>=1000000)
{
printf("1000000 ");
n=n-1000000;
}
else
{
printf("%d ",n);
n=0;
}
}
}
int main()
{
ll n;
cin>>n;
printf("2000\n");
int k=1999;
n=k+1+n;
print(k,n);
}