1011 Sticks
来源:互联网 发布:js 文件下载 编辑:程序博客网 时间:2024/06/09 15:46
经典搜索
#include <stdio.h>#include <string.h>#include <algorithm>using namespace std;#define N 100int used[N],len[N],sum,n,Min;bool find(int p, int rest, int trest){ if (trest==Min) return true; for (int i=p; i!=n; i++) if (!used[i] && len[i]<=rest) { used[i]=1; if (len[i]==rest) { if (find(0,Min,trest-len[i])) return true; } else { if (find(i,rest-len[i],trest-len[i])) return true; } used[i]=0; if (len[i]==rest) return false; if (trest==sum) return false; if (rest==Min) return false; while (len[i+1]==len[i]) i++; } return false;}bool cmp(int x,int y) { return x>y; }int main(){ while (scanf("%d",&n) && n) { for (int i=0; i!=n; i++) scanf("%d",&len[i]); memset(used,0,sizeof(used)); sort(len,len+n,cmp); sum=0; for (int i=0; i!=n; i++) sum+=len[i]; Min=len[0]; while (sum%Min!=0) Min++; while (!find(0,Min,sum)) { Min++; while (sum%Min!=0) Min++; } printf("%d\n",Min); } return 0;}
- 1011 Sticks
- 1011 Sticks
- 1011--Sticks
- 1011 Sticks
- poj 1011-sticks
- PKU 1011 Sticks
- POJ 1011 Sticks
- pku 1011 sticks
- poj 1011 Sticks
- poj 1011 Sticks
- pku 1011 sticks
- pku 1011 sticks
- pku 1011 sticks
- POJ 1011 Sticks
- poj 1011 Sticks
- POJ 1011 Sticks
- PKU 1011 Sticks
- poj 1011 sticks
- 我的决定
- TinyOS快速入门
- 1006 Biorhythms
- (转)深入理解HashMap
- linux c 进程控制
- 1011 Sticks
- hdu 4277 USACO ORZ (暴力+set容器判重)
- 排序算法 总结&思考(二)
- 128M vps上部署django应用的步骤
- HDU 4609 快速傅里叶变换
- 1012 约瑟夫变形
- poj 2115 扩展欧几里德
- 1013 Counterfeit Dollar
- as3完美解决单击事件、双击事件问题