讨论 / 36个if也AC..
Mine_ysd 2012-08-20 06:20:00
点我顶贴 收藏 删除
状态: Accepted

测评机: Xeond[6]

得分: 100分

提交日期: 2010-7-25 18:09:00

有效耗时: 360毫秒

测试结果1: 通过本测试点|有效耗时172ms

测试结果2: 通过本测试点|有效耗时47ms

测试结果3: 通过本测试点|有效耗时47ms

测试结果4: 通过本测试点|有效耗时47ms

测试结果5: 通过本测试点|有效耗时47ms

提交代码:

var i,j:integer;

x:array[1..9,1..9]of longint;

function flag(a,b,c,d,e,f,g,h,i:longint):boolean;

var p:array[1..9]of boolean;ysd:integer;

begin

fillchar(p,sizeof(p),false);

if a in[1..9] then p[a]:=true;

if b in[1..9] then p[b]:=true;

if c in[1..9] then p[c]:=true;

if d in[1..9] then p[d]:=true;

if e in[1..9] then p[e]:=true;

if f in[1..9] then p[f]:=true;

if g in[1..9] then p[g]:=true;

if h in[1..9] then p[h]:=true;

if i in[1..9] then p[i]:=true;

for j:=1 to 9 do

if not p[j] then exit(true);

exit(false);

end;

begin

for i:=1 to 9 do

for j:=1 to 9 do read(x[i,j]);

if flag(x[1,1],x[1,2],x[1,3],x[2,1],x[2,2],x[2,3],x[3,1],x[3,2],x[3,3])

then begin write(0); halt;end;

if flag(x[4,1],x[4,2],x[4,3],x[5,1],x[5,2],x[5,3],x[6,1],x[6,2],x[6,3])

then begin write(0); halt;end;

if flag(x[7,1],x[7,2],x[7,3],x[8,1],x[8,2],x[8,3],x[9,1],x[9,2],x[9,3])

then begin write(0); halt;end;

if flag(x[1,4],x[1,5],x[1,6],x[2,4],x[2,5],x[2,6],x[3,4],x[3,5],x[3,6])

then begin write(0); halt;end;

if flag(x[4,4],x[4,5],x[4,6],x[5,4],x[5,5],x[5,6],x[6,4],x[6,5],x[6,6])

then begin write(0); halt;end;

if flag(x[7,4],x[7,5],x[7,6],x[8,4],x[8,5],x[8,6],x[9,4],x[9,5],x[9,6])

then begin write(0); halt;end;

if flag(x[1,7],x[1,8],x[1,9],x[2,7],x[2,8],x[2,9],x[3,7],x[3,8],x[3,9])

then begin write(0); halt;end;

if flag(x[4,7],x[4,8],x[4,9],x[5,7],x[5,8],x[5,9],x[6,7],x[6,8],x[6,9])

then begin write(0); halt;end;

if flag(x[7,7],x[7,8],x[7,9],x[8,7],x[8,8],x[8,9],x[9,7],x[9,8],x[9,9])

then begin write(0); halt;end;

if flag(x[1,1],x[1,2],x[1,3],x[1,4],x[1,5],x[1,6],x[1,7],x[1,8],x[1,9])

then begin write(0); halt;end;

if flag(x[2,1],x[2,2],x[2,3],x[2,4],x[2,5],x[2,6],x[2,7],x[2,8],x[2,9])

then begin write(0); halt;end;

if flag(x[3,1],x[3,2],x[3,3],x[3,4],x[3,5],x[3,6],x[3,7],x[3,8],x[3,9])

then begin write(0); halt;end;

if flag(x[4,1],x[4,2],x[4,3],x[4,4],x[4,5],x[4,6],x[4,7],x[4,8],x[4,9])

then begin write(0); halt;end;

if flag(x[5,1],x[5,2],x[5,3],x[5,4],x[5,5],x[5,6],x[5,7],x[5,8],x[5,9])

then begin write(0); halt;end;

if flag(x[6,1],x[6,2],x[6,3],x[6,4],x[6,5],x[6,6],x[6,7],x[6,8],x[6,9])

then begin write(0); halt;end;

if flag(x[7,1],x[7,2],x[7,3],x[7,4],x[7,5],x[7,6],x[7,7],x[7,8],x[7,9])

then begin write(0); halt;end;

if flag(x[8,1],x[8,2],x[8,3],x[8,4],x[8,5],x[8,6],x[8,7],x[8,8],x[8,9])

then begin write(0); halt;end;

if flag(x[9,1],x[9,2],x[9,3],x[9,4],x[9,5],x[9,6],x[9,7],x[9,8],x[9,9])

then begin write(0); halt;end;

if flag(x[1,1],x[2,1],x[3,1],x[4,1],x[5,1],x[6,1],x[7,1],x[8,1],x[9,1])

then begin write(0); halt;end;

if flag(x[1,2],x[2,2],x[3,2],x[4,2],x[5,2],x[6,2],x[7,2],x[8,2],x[9,2])

then begin write(0); halt;end;

if flag(x[1,3],x[2,3],x[3,3],x[4,3],x[5,3],x[6,3],x[7,3],x[8,3],x[9,3])

then begin write(0); halt;end;

if flag(x[1,4],x[2,4],x[3,4],x[4,4],x[5,4],x[6,4],x[7,4],x[8,4],x[9,4])

then begin write(0); halt;end;

if flag(x[1,5],x[2,5],x[3,5],x[4,5],x[5,5],x[6,5],x[7,5],x[8,5],x[9,5])

then begin write(0); halt;end;

if flag(x[1,6],x[2,6],x[3,6],x[4,6],x[5,6],x[6,6],x[7,6],x[8,6],x[9,6])

then begin write(0); halt;end;

if flag(x[1,7],x[2,7],x[3,7],x[4,7],x[5,7],x[6,7],x[7,7],x[8,7],x[9,7])

then begin write(0); halt;end;

if flag(x[1,8],x[2,8],x[3,8],x[4,8],x[5,8],x[6,8],x[7,8],x[8,8],x[9,8])

then begin write(0); halt;end;

if flag(x[1,9],x[2,9],x[3,9],x[4,9],x[5,9],x[6,9],x[7,9],x[8,9],x[9,9])

then begin write(0); halt;end;

write(1);

end.

#1 flyfire2002@2010-07-25 07:07:00
回复 删除
看到底下的东西我瞎了

题号多少?

#2 Jay-Chan@2010-07-25 16:33:00
回复 删除
够晕!
#3 Mine_ysd@2010-07-28 05:23:00
回复 删除
题目:验证数独

问题编号:289

#4 刘载清@2012-08-20 06:20:00
回复 删除
强悍哥

强悍哥

#5 qzssyxxypc@2016-02-03 05:08:59
回复 删除
小伙子,带劲!!
查看更多回复
提交回复