Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
拙代码,供大家参考#include <cstdio> using namespace std; int marble[6]; bool DFS(int sum) { if(sum==0)return true; for(int i=6;i>0;--i) { if(sum>=i && marble[i-1]>0) { --marble[i-1]; int t=sum-i; if(DFS(t))return true; } } return false; } int main() { int s=1; while(scanf("%d%d%d%d%d%d",&marble[0],&marble[1],&marble[2],&marble[3],&marble[4],&marble[5])!=EOF && (marble[0]!=0 || marble[1]!=0 ||marble[2]!=0 || marble[3]!=0 || marble[4]!=0 ||marble[5]!=0)) { int sum=marble[0]+marble[1]*2+marble[2]*3+marble[3]*4+marble[4]*5+marble[5]*6; if(sum%2) { printf("Collection #%d:\nCan't be divided.\n\n",s++); continue; } else { if(DFS(sum/2))printf("Collection #%d:\nCan be divided.\n\n",s++); else printf("Collection #%d:\nCan't be divided.\n\n",s++); } } return 0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator