- 毒药?解药?
- 2013-12-22 20:54:18 @
#include<cstdio>
#include<cstdlib>
#include<cstring>
struct ptype{int v,a[10],t;};
int n,m;
int y[101][10];
ptype q[2000];
bool zt[2000];
int f=0,r=1;
int ans=0;
int main()
{
scanf("%d %d",&n,&m);
for (int i=0;i<m;i++)
{
for (int j=0;j<n;j++)
scanf("%d",&y[i][j]);
}
memset(zt,false,sizeof(zt));
q[f].v=0;
for (int i=0;i<n;i++)
{
q[f].a[i]=1;
q[f].v*=2;
q[f].v+=1;
}
q[f].t=0;
zt[q[f].v]=true;
int x;
while (f!=r)
{
for (int i=0;i<m;i++)
{
q[r]=q[f];
x=0;
for (int j=0;j<n;j++)
{
if (y[i][j]==1) q[r].a[j]=0;
if (y[i][j]==-1) q[r].a[j]=1;
x*=2;
x+=q[r].a[j];
}
if (zt[x]==false)
{
q[r].v=x;
q[r].t++;
zt[x]=true;
r++;
}
if (x==0) {ans=q[f].t+1;break;}
}
if (ans!=0) break;
f++;
}
if (ans==0) printf("The patient will be dead.");
else printf("%d",ans);
return 0;
}
3 条评论
-
贱人在我右边 LV 9 @ 2016-12-14 12:35:20
orz
-
2015-07-05 11:36:40@
你这个是错的吧。。。
-
2014-10-26 21:50:09@
Orz
- 1