Pagini recente » Monitorul de evaluare | Monitorul de evaluare | Monitorul de evaluare | hc_round1 | Cod sursa (job #610480)
Cod sursa(job #610480)
Program patrate2;
var a:array [0..1000005] of byte;
b1,b2:array [1..1 shl 15] of char;
i,j,n,l,lim:longint;
fi,fo:text;
procedure inmulteste(n:integer);
var t,i,s,code,x,k:longint;
s2:string;
begin
t:=0; k:=0;
for i:=l downto lim do begin
s:=n*a[i]+t;
t:=s div 10;
a[i]:=s mod 10;
end;
if t>0 then begin
str(t,s2);
lim:=lim-length(s2);
for s:=lim to i-1 do begin
inc(k);
val(s2[k],x,code);
a[s]:=x;
end;
end;
end;
begin
assign(fi,'patrate2.in');
assign(fo,'patrate2.out');
settextbuf(fi,b1);
settextbuf(fo,b2);
reset(fi);
rewrite(fo);
readln(fi,n);
l:=1000000; a[1000000]:=1; lim:=1000000;
for i:=1 to n*n do inmulteste(2);
for i:=2 to n do inmulteste(i);
for i:=lim to 1000000 do write(fo,a[i]);
close(fo);
end.