Pagini recente » Cod sursa (job #214235) | Cod sursa (job #71874) | Cod sursa (job #2961857) | Cod sursa (job #798539) | Cod sursa (job #165808)
Cod sursa(job #165808)
{ http://infoarena.ro/problema/cifra }
var f,g:text;
s:string[100];
n:int64;
i,t,e:integer;
v:array[0..99] of byte;
function putereuc(n,p:int64):int64;
var a:int64;
begin
if p=0 then putereuc:=1
else if p=1 then putereuc:=n mod 10
else begin
a:=putereuc(n,p div 2);
a:=a*a mod 10;
if odd(p) then a:=a*n mod 10;
putereuc:=a;
end;
end;
function sumauc(n:int64):int64;
var s,i:int64;
begin
s:=0; i:=1;
while i<=n do
begin
s:=s+putereuc(i mod 10,i);
i:=i+1;
end;
s:=s mod 10;
sumauc:=s;
end;
begin
assign(f,'cifra.in'); reset(f);
assign(g,'cifra.out'); rewrite(g);
readln(f,t);
for i:=0 to 99 do
v[i]:=sumauc(i);
for i:=1 to t do
begin
readln(f,s);
val(copy(s,length(s)-1,2),n,e);
writeln(g,v[n]);
end;
close(f); close(g);
end.