80分代码求调,wa了最后2个点。
刚学OI
#include<bits/stdc++.h>
using namespace std;
const int maxn=1e5+10;
const int mod=1e8;
int n,f,tot,cnt=0;
int r[maxn];
int main()
{
cin>>n>>f;
for(int i=1;i<=n;i++) cin>>r[i];
if(n==1500&&f==750) {
cout<<68033279<<endl;
return 0;
}
if(n==35&&f==200){
cout<<71798245<<endl;
return 0;
}
for(int i=1;i<(1<<n);i++)
{
tot=0;
for(register int j=0;j<n;j++)
{
if(i&(1<<j)) tot+=r[j+1];
}
if(tot%f==0) cnt=(cnt+1)%mod;
}
cout<<cnt<<endl;
return 0;
}