Fortuna OJ 项目
作者: moreD , RD ; 协力: twilight
由 Codeigniter / Bootstrap 驱动
作者: moreD , RD ; 协力: twilight
由 Codeigniter / Bootstrap 驱动
Glyphicons 提供图标
哎!又一道淼题!
本来以为很难,事实上......
被洗脑后识破此题本质....
水的不要不要的模拟!
每一个操作不能做4次或以上,否则有重复
枚举每个操作用几次,z递归保证字典序
时间复杂度4^9=262144,1秒内
可过!
标程(请勿抄袭):
var
i,j,k,m,n,o,p,l,s,t:longint;
a,g:array[1..3,1..3] of longint;
b:array[0..1000] of longint;
function jia(t:longint):longint;
begin
jia:=(t+3) mod 12;
if jia=0 then jia:=12;
end;
procedure turn(t:longint);
begin
if t=1 then begin
g[1,1]:=jia(g[1,1]);g[1,2]:=jia(g[1,2]);g[2,1]:=jia(g[2,1]);g[2,2]:=jia(g[2,2]);
end;
if t=2 then begin
g[1,1]:=jia(g[1,1]);g[1,2]:=jia(g[1,2]);g[1,3]:=jia(g[1,3]);
end;
if t=3 then begin
g[1,2]:=jia(g[1,2]);g[1,3]:=jia(g[1,3]);g[2,2]:=jia(g[2,2]);g[2,3]:=jia(g[2,3]);
end;
if t=4 then begin
g[1,1]:=jia(g[1,1]);g[2,1]:=jia(g[2,1]);g[3,1]:=jia(g[3,1]);
end;
if t=5 then begin
g[1,2]:=jia(g[1,2]);g[2,1]:=jia(g[2,1]);g[2,2]:=jia(g[2,2]);g[2,3]:=jia(g[2,3]);g[3,2]:=jia(g[3,2]);
end;
if t=6 then begin
g[1,3]:=jia(g[1,3]);g[2,3]:=jia(g[2,3]);g[3,3]:=jia(g[3,3]);
end;
if t=7 then begin
g[2,1]:=jia(g[2,1]);g[2,2]:=jia(g[2,2]);g[3,1]:=jia(g[3,1]);g[3,2]:=jia(g[3,2]);
end;
if t=8 then begin
g[3,1]:=jia(g[3,1]);g[3,2]:=jia(g[3,2]);g[3,3]:=jia(g[3,3]);
end;
if t=9 then begin
g[2,2]:=jia(g[2,2]);g[2,3]:=jia(g[2,3]);g[3,2]:=jia(g[3,2]);g[3,3]:=jia(g[3,3]);
end;
end;
procedure dg(t:longint);
var
i,j:longint;
begin
if t>9 then begin
for i:=1 to b[0] do
begin
turn(b[i]);
end;
o:=0;
for i:=1 to 3 do
for j:=1 to 3 do
if g[i,j]<>12 then o:=1;
if o=0 then begin
for i:=1 to b[0] do write(b[i],' ');
halt;
end;
g:=a;
end else begin
for i:=0 to 3 do begin
for j:=1 to i do begin
inc(b[0]);
b[b[0]]:=t;
end;
dg(t+1);
dec(b[0],i);
end;
end;
end;
begin
for i:=1 to 3 do begin
for j:=1 to 3 do
read(a[i,j]);
readln;
end;
g:=a;
b[0]:=0;
dg(0);
end.