Cod sursa(job #16875)

Utilizator ProtomanAndrei Purice Protoman Data 14 februarie 2007 13:04:21
Problema Patrate2 Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.36 kb
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fcharset0 Arial;}}
{\*\generator Msftedit 5.41.21.2506;}\viewkind4\uc1\pard\f0\fs20 type vector=array[0..5000] of longint;\par
\par
var f1,f2:text; n,m:longint; v:vector; i,j:longint;\par
\par
procedure inmultire(nr:integer);\par
begin\par
  m:=0;\par
  for i:=1 to v[0] do begin\par
    v[i]:=v[i]*nr;\par
    v[i]:=v[i]+m;\par
    m:=v[i] div 10;\par
    v[i]:=v[i] mod 10;\par
  end;\par
  while m>0 do begin\par
    inc(v[0]);\par
    v[v[0]]:=m mod 10;\par
    m:=m div 10;\par
  end;\par
end;\par
\par
begin\par
assign(f1,'patrate2.in');\par
reset(f1);\par
assign(f2,'patrate2.out');\par
rewrite(f2);\par
read(f1,n);\par
v[0]:=1;\par
v[v[0]]:=1;\par
for j:=1 to n do\par
inmultire(j);\par
for j:=1 to n*n div 12 do\par
inmultire(4096);\par
if n*n mod 12=1 then inmultire(2);\par
if n*n mod 12=2 then inmultire(4);\par
if n*n mod 12=3 then inmultire(8);\par
if n*n mod 12=4 then inmultire(16);\par
if n*n mod 12=5 then inmultire(32);\par
if n*n mod 12=6 then inmultire(64);\par
if n*n mod 12=7 then inmultire(128);\par
if n*n mod 12=8 then inmultire(256);\par
if n*n mod 12=9 then inmultire(512);\par
if n*n mod 12=10 then inmultire(1024);\par
if n*n mod 12=11 then inmultire(2048);\par
for j:=v[0] downto 1 do write(f2,v[j]);\par
close(f1);\par
close(f2);\par
end.\par
}