CF1129B 【Wrong Answer】

既然 $ n \leq 2000$ 那我们就假使所有的 $n = 2000 $ 主要是为了方便。再使 \(x = \sum_{i=1} ^ {1999}\) 以及 $a_1=a_2=a_3=...=a_{1998}=0 \(,\)a_{1999}=-d\(,\)a_{2000}=x+d$。

正确答案就应该是\(2000x\),而爱丽丝答案为\(x+d\),两个答案的差值为\(2000x-x+d\),所以\(1999x=k+d\),\(x=\frac{k+d}{1999}\),则d = 1999 - k % 1999。

#include<bits/stdc++.h>
using namespace std;
int k, a;
int main() {
scanf("%d", &k);a = 2000 - k % 2000 + 998000;
printf("2000\n");
for (int i = 1; i <= 1998; i ++) printf("0 ");
printf("%d %d\n", -a + (k + a) / 2000, a);
return 0;
}
上一篇:[Jsp]防止页面表单重复提交的解决方法


下一篇:RHEL 6.4 通过mysql安装文件安装mysql