strtok and gets are used to parse input...
/* UVas */
/*****************************************************************************/
#define N 21
#define S 101
#define BUF 512
int m;
int l[N];
int d[S];
char str[BUF];
int main(void) {
scanf("%d", &m);
gets(str);
while (m--) {
gets(str);
int i, s=0, idx=0;
for (char *ptr=strtok(str, " "); ptr; ptr=strtok(0, " ")) {
i=atoi(ptr), l[idx++]=i, s+=i;
}
if (s%2) {
printf("NO\n");
continue;
}
s/=2;
memset(d, 0, sizeof(d));
d[0]=1;
for (int i=0; i<idx; i++)
for (int j=S-1; j>=l[i]; j--)
d[j]|=d[j-l[i]];
d[s]?printf("YES\n"):printf("NO\n");
}
}
/*****************************************************************************/
No comments :
Post a Comment