【明月杯3E】望月
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
给定一个长度为 的数列,问数列中出现次数为 的倍数的数字分别有多少种?
输入格式
由于本题的输入量过大,所以采用生成式输入。
第一行两个整数 。
第二行两个整数,表示 。
数组 由 和代码生成,请选手在提交的代码中选择合适位置生成数组 ,这里提供cpp
代码.
void decode(long long n,long long s,long long key){
for(long long i = 1;i <= n;i++){
a[i] = s;
s = (25214903917 * s) & key;
}
}
输出格式
由于本题输出量过大,所以使用加密输出。
一行 个整数,代表答案的平方和,请使用 64 位有符号整型自然溢出得到答案。
样例 #1
样例输入 #1
7 4
1 15
样例输出 #1
25
样例 #2
样例输入 #2
100 100
1 65535
样例输出 #2
10000
提示
样例 生成的 数组为
出现了 次,所以出现次数为 的倍数的种类数为 ,出现次数为 的倍数的种类数为 ,平方和为
对于 的数据,。
对于额外 的数据,。
对于 的数据,,。