CF-831C
昨天写的题了,打完多校后拿出来看了看改了改参数就过了。。。
AC代码:
1 #include<bits/stdc++.h> 2 using namespace std; 3 4 int sum[2010]; 5 vector<int> vec; 6 map<int,int> mp; 7 8 int main(){ 9 int n,k; 10 int x; 11 cin>>k>>n; 12 memset(sum,0,sizeof(sum)); 13 for(int i=1;i<=k;i++){ 14 cin>>x; 15 sum[i]=sum[i-1]+x; 16 } 17 sort(sum+1,sum+1+k); 18 int len=unique(sum+1,sum+1+k)-(sum+1);//去重后的长度 19 //cout<<len<<endl; 20 for(int i=0;i<n;i++){ 21 cin>>x; 22 for(int j=1;j<=len;j++){ 23 int temp=x-sum[j]; 24 vec.push_back(temp); 25 } 26 } 27 sort(vec.begin(),vec.end()); 28 for(int i=0;i<vec.size();i++){ 29 mp[vec[i]]++; 30 } 31 int num=0; 32 for(int i=0;i<vec.size();i++){ 33 if(mp[vec[i]]>=n){ 34 num++; 35 mp[vec[i]]=0; 36 } 37 } 38 cout<<num<<endl; 39 return 0; 40 }