比赛 |
20100324 |
评测结果 |
EEAEAEEE |
题目名称 |
奇特的图案 |
最终得分 |
25 |
用户昵称 |
Achilles |
运行时间 |
0.000 s |
代码语言 |
Pascal |
内存使用 |
0.00 MiB |
提交时间 |
2010-03-24 20:02:12 |
显示代码纯文本
program t3;
type
light=array[1..1000]of boolean;
var
n,t,i,j,p1,p2,p:integer;
tab:array[0..10000]of light;
tab2:array[1..1000,1..1000]of boolean;
step:array[1..10000]of integer;
begin
assign(input,'t3.in');
assign(output,'t3.out');
reset(input);
rewrite(output);
readln(n);
fillchar(tab,sizeof(tab),true);
fillchar(tab2,sizeof(tab2),false);
for i:=1 to n do
begin
read(t);
if t=0 then tab[1,i]:=false;
while not eoln do
begin
read(t);
tab2[i,t]:=true;
end;
end;
p1:=0;
p2:=1;
step[1]:=0;
while true do
begin
p1:=p1+1;
p:=0;
for i:=1 to n do
if tab[p1,i]=false then begin
p:=1;
break;
end;
if p=0 then begin
writeln(step[p1]);
break;
end
else begin
for i:=1 to n do
begin
p2:=p2+1;
tab[p2]:=tab[p1];
step[p2]:=step[p1]+1;
if tab[p2,i] then tab[p2,i]:=false else tab[p2,i]:=true;
for j:=1 to n do
begin
if tab2[i,j]=true then
if tab[p2,j] then tab[p2,j]:=false else tab[p2,j]:=true;
end;
end;
end;
end;
close(input);
close(output);
end.