这个题挺好理解的,但是自己也没有写出来 : (
无意间发现了一个事情!!!
#include<iostream>
using namespace std;
int main()
{
int a[10001]={0},k,n;
bool f[10001][101]={0};
cin>>n>>k;
for(int i=1;i<=n;i++)
{
cin>>a[i];
a[i]%=k;
}
f[1][a[1]]=true;
for(int i=2;i<=n;i++)
for(int j=0;j<k;j++)
if(f[i-1][j])
{
f[i][(j-a[i]+k)%k]=true;
f[i][(j+a[i])%k]=true;
}
if(f[n][0])
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
return 0;
}