hdu 2141 Can you find it?
#include<stdio.h> #include<set> using namespace std; set<int> si; int a[510],b[510],c[510]; int main() { int l,n,m,s,x; int i,j,k; int _case=0; while(scanf("%d%d%d",&l,&n,&m)!=EOF) { si.clear(); for(i=0;i<l;i++) scanf("%d",&a[i]); for(i=0;i<n;i++) scanf("%d",&b[i]); for(i=0;i<m;i++) scanf("%d",&c[i]); for(i=0;i<l;i++) for(j=0;j<n;j++) { si.insert(a[i]+b[j]); } scanf("%d",&s); printf("Case %d:\n",++_case); for(i=0;i<s;i++) { scanf("%d",&x); int flag=0; for(j=0;j<m;j++) { if(si.find(x-c[j])!=si.end()) { flag=1; break; } } if(flag) printf("YES\n"); else printf("NO\n"); } } return 0; }