还记得学习了自然数的小 Z 吗?他发现了一些神奇的整数,比如 105 ,它既可以写成连续5个整数的和 105=19+20+21+22+23 ,它还可以写成7个正自然数的和 105=12+13+14+15+16+17+18。
现在,给定一个长度为 n 的奇数序列 ai,小 Z 希望要找到这样的正整数,对于任意的 ai,它都可以被表示成连续 ai 个整数的和。
小 Z 想要知道,在所有 1∼m 的整数数中,总共有多少个数满足条件。
输入两行。
第一行两个正整数 n,m。
第二行 n 个正奇数。
一行一个整数,表示答案。
2 100
5 7
2
在 100 以内 35 和 70 两个数既可以表示成连续 5个整数的和,又可以表示成连续 7个整数的和。
连续和中的整数允许是负,比如 30 依然可以写作连续 15 个整数的和,30=(−5)+(−4)+(−3)+(−2)+(−1)+0+1+2+3+4+5+6+7+8+9
对于 40% 的数据,有 1≤n≤4,有 1≤m≤104。
对于 100% 的数据,有 1≤n≤10, 1≤m≤107。
#include <bits/stdc++.h>
#define int long long
using namespace std;
int n,m,mul=1,cnt;
signed main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
int t;
cin>>t;
mul*=t;
}
for(int i=1;i*mul<=m;i++){
cnt++;
}
cout<<cnt;
return 0;
}
只有 60 pts 求助大佬悬关