比赛 |
20100324 |
评测结果 |
TTATTTTT |
题目名称 |
奇特的图案 |
最终得分 |
12 |
用户昵称 |
Oo湼鞶oO |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2010-03-24 21:15:02 |
显示代码纯文本
#include <fstream>
#define MAX 1000
using namespace std;
short n,ans;
short s[1000][1000];
bool f[MAX][1000];
short deep[MAX];
void input();
void output(const short x);
bool pd(const short x);
void bps();
int main()
{
input();
bps();
}
void input()
{
ifstream fin("t3.in");
fin>>n;
for (short i=0; i<n; i++)
{
fin>>f[0][i];
while ((fin.get()!='\n')&&(fin.eof()!=true))
fin>>s[i][++s[i][0]];
}
}
void output(const short x)
{
ofstream fout("t3.out");
fout<<x<<endl;
fout.close();
exit(0);
}
bool pd(const short x)
{
for (short i=0; i<n; i++)
if (f[x][i]==false)
return false;
return true;
}
void bps()
{
short j=0,k=1,i,o;
do{
for (i=0; i<n; i++)
{
for (o=0; o<n; f[k][o]=f[j][o++]);
for (o=1; o<=s[i][0]; f[k][s[i][o]]=!(f[k][s[i][o++]]));
if (pd(k))
output(deep[j]+1);
deep[k]=deep[j]+1;
}
} while (k<=MAX);
}