信息
- ID
- 228
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 9
- 标签
- 递交数
- 9
- 已通过
- 4
- 上传者
。。。。。
#include<bits/stdc++.h>
using namespace std;
const int ll=1e6;
int a[6];
int f[ll];
int v[1000];
int main(){
while(1){
memset(f,0,sizeof(f));
int sum=0,cnt=0;
for(int i=1;i<=6;i++){
cin>>a[i];
sum+=a[i]*i;
}
if(!sum) break;
for(int i=1;i<=6;i++){
int k=a[i],c=1;
while(1){
if(k<c){
v[++cnt]=i*k;
break;
}
k-=c;
v[++cnt]=i*c;
c*=2;
}
}
f[0]=1;
for(int i=1;i<=cnt;i++)
for(int j=sum;j>=v[i];j--)
f[j]|=f[j-v[i]];
if(sum&1) printf("Can't\n");
else{
if(f[sum/2])
printf("Can\n");
else printf("Can't\n");
}
}
return 0;
}