Cod sursa(job #176768)
| Utilizator | Data | 11 aprilie 2008 17:44:52 | |
|---|---|---|---|
| Problema | 12-Perm | Scor | 90 |
| Compilator | fpc | Status | done |
| Runda | Arhiva de probleme | Marime | 0.52 kb |
var t1,t2,t3,t,i,n : longint;
f,g : text;
begin
assign(f,'12perm.in');reset(f);
assign(g,'12perm.out');rewrite(g);
read(f,n);
t1:=2; t2:=6; t3:=12;
if n=1 then writeln(g,'1')
else
if n=2 then writeln(g,'2')
else
if n=3 then writeln(g,'6')
else
if n=4 then writeln(g,'12')
else
begin
for i:=5 to n do
begin
t:=(t1 and 1048575+t3 and 1048575+(2*(i-2))and 1048575)and 1048575;
t1:=t2;t2:=t3;t3:=t;
end;
writeln(g,t);
end;
close(g);
end.