PersonalCorpus 版 (精华区)
寄信人: sino (蚱蜢舟)
标 题: 1042
发信站: 哈工大紫丁香 (2002年03月23日12:05:33 星期六)
来 源: mtlab4.hit.edu.cn
171169 04:08:02 23 Mar 2002
Bozhang,HIT,P.R.China 1042 Pascal Accepted 0.03 sec 114K
var
p:array[1..250] of string[250];
best_s,now_s:array[1..250] of boolean;
state,full:string[250];
i,j,n,best,dep:integer;
procedure tryit(b:integer);
var i,j:integer;
begin
if state=full then begin
if dep<best then begin
for i:=1 to n do best_s[i]:=now_s[i];
best:=dep;
end;
exit;
end;
if b>n then exit;
if dep>=best then exit;
for i:=b to n do begin
for j:=1 to n do state[j]:=char(byte(state[j]) xor byte(p[i,j]));
now_s[i]:=true;
inc(dep);
tryit(i+1);
inc(dep);
now_s[i]:=false;
for j:=1 to n do state[j]:=char(byte(state[j]) xor byte(p[i,j]));
end;
end;
begin
readln(n); fillchar(p,sizeof(p),0);
fillchar(state,sizeof(state),0);
for i:=1 to n do begin
p[i,0]:=chr(n);
read(j);
while j>0 do begin p[i,j]:='1';state[j]:='1'; read(j); end;
readln;
end;
state[0]:=chr(n); full[0]:=chr(n);
for i:=1 to n do full[i]:='1';
if state<>full then begin
writeln('No solution');
halt;
end;
fillchar(now_s,sizeof(now_s),0);
fillchar(state,sizeof(state),0); state[0]:=chr(n);
best:=60000;
dep:=0;
tryit(1);
if best=60000 then begin
writeln('No solution');
halt;
end;
for i:=1 to n do if best_s[i] then write(i,' '); writeln;
end.
--
... 这一阵歌声传入湖边一个道姑耳中。她在一排柳树下悄立已久,
晚风拂动她杏黄色道袍的下摆,拂动她颈中所插拂尘的万缕柔丝,心
头思潮起伏,当真亦是「芳心只共丝争乱」 ...
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: mtlab4.hit.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:1.901毫秒