陈凯斌吧 关注:9贴子:84
  • 0回复贴,共1
  • 202.101.104.*
var a:array[1..3,1..3]of longint;
    p,c:array[1..9]of longint;
    i,j,n,m,x,y,z,max,max1:longint;
begin
    for i:=1 to 3 do
     for j:=1 to 3 do
      read(a[i,j]);
      max1:=maxlongint;
    for p[1]:=0 to 3 do
     for p[2]:=0 to 3 do
      for p[3]:=0 to 3 do
       begin
        max:=0;
        p[4]:=abs(p[1]+p[2]-(4-a[1,1])) mod 4;
        p[5]:=abs(p[1]+p[2]+p[3]-(4-a[1,2])) mod 4;
        p[6]:=abs(p[2]+p[3]-(4-a[1,3])) mod 4;
        p[7]:=abs(p[1]+p[4]+p[5]-(4-a[2,1])) mod 4;
        p[9]:=abs(p[1]+p[3]+p[5]+p[7]-(4-a[2,2])) mod 4;
        p[8]:=abs(p[4]+p[7]-(4-a[3,1])) mod 4;
        if ((p[3]+p[5]+p[6]+p[9] mod 4) = (4-a[2,3]))
        and ((p[5]+p[7]+p[8]+p[9] mod 4)= (4-a[3,2]))
        and ((p[6]+p[8]+p[9] mod 4)= (4-a[3,3]))
        then begin
        for i:=1 to 9 do max:=max+p[i];
        if max<max1 then
         begin
          max1:=max;     for j:=1 to 9 do c[j]:=p[j];
         end;
        end;
       end;
      for i:=1 to 9 do if c[i]<>0 then write(i,' ');
end.


1楼2008-07-16 13:48回复