记录编号 |
111853 |
评测结果 |
AWAAWAATTT |
题目名称 |
[USACO 2.1] 荷斯坦奶牛 |
最终得分 |
50 |
用户昵称 |
ok |
是否通过 |
未通过 |
代码语言 |
C++ |
运行时间 |
4.156 s |
提交时间 |
2014-07-14 11:29:00 |
内存使用 |
0.32 MiB |
显示代码纯文本
- #include <fstream>
- using namespace std;
- ifstream input("holstein.in");
- ofstream output("holstein.out");
- int i,j,n,a[26]={0},m,b[26][26]={0},z1=1000,z2=10000000,c[26]={0};
- bool z3[26]={0},bian[26]={0};
- int niu(int x,int y)
- {
- int k,l,mmm=1;
- for(k=1;k<=n;k++)
- {
- if(c[k]<a[k]) mmm=0;
- }
- if(x<z1&&mmm)
- {
- z1=x;
- z2=y;
- for(i=1;i<=m;i++)
- {
- z3[i]=bian[i];
- }
- }
- if(x=z1&&y<=z2&&mmm)
- {
- z2=y;
- for(i=1;i<=m;i++)
- {
- z3[i]=bian[i];
- }
- }
- if(x<=z1)
- {
- for(k=m;k>=1;k--)
- {
- if(bian[k]==0)
- {
- bian[k]=1;
- for(l=1;l<=n;l++)
- {
- c[l]+=b[k][l];
- y+=b[k][l];
- }
- niu(x+1,y);
- bian[k]=0;
- for(l=1;l<=n;l++)
- {
- c[l]-=b[k][l];
- y-=b[k][l];
- }
- }
- }
- }
- return 0;
- }
- int main()
- {
- input>>n;
- for(i=1;i<=n;i++) input>>a[i];
- input>>m;
- for(i=1;i<=m;i++) for(j=1;j<=n;j++) input>>b[i][j];
- niu(0,0);
- z1=0;
- for(i=1;i<=m;i++)
- {
- if(z3[i]) z1++;
- }
- output<<z1;
- for(i=1;i<=m;i++)
- {
- if(z3[i]) output<<' '<<i;
- }
- output<<endl;
- input.close();
- output.close();
- return 0;
- }