Cod sursa(job #819405)
var a,b:int64;
i,l,t:integer;
f,g:text;
j,k:0..1000;
n:string[100];
begin
assign(f,'cifra.in');reset(f);readln(f,t);
assign(g,'cifra.out');rewrite(g);
for i:=1 to t do begin
k:=0;
while not eoln(f) do begin
inc(k);
read(f,n[k]);end;
readln(f);
if k>3 then begin
k:=0;
for l:=(length(n)-2) to length(n) do begin
k:=k*10;k:=k+ord(n[l])-48;end;end
else if k=2 then begin k:=0; for l:=1 to 2 do begin
k:=k*10;k:=k+ord(n[l])-48;end;
end
else k:=ord(n[1])-48;
k:=(k mod 100)+1;j:=(4*(k div 20))mod 10;k:=(k mod 20)-1;
case k of
1:k:=1;2:k:=5;3:k:=2;4:k:=8;5:k:=3;6:k:=9;7:k:=2;8:k:=8;9:k:=7;10:k:=7;
11:k:=8;12:k:=4;13:k:=7;14:k:=3;15:k:=8;16:k:=4;17:k:=1;18:k:=5;19:k:=4;
20:k:=4;
end;
j:=k+j;
writeln(g,j mod 10);
end;
close(f);close(g);
end.