Pagini recente » Diferente pentru planificare/sedinta-20091023 intre reviziile 41 si 40 | Diferente pentru utilizator/maritim intre reviziile 47 si 46 | Istoria paginii utilizator/diana.fulga | Diferente pentru concursuri intre reviziile 108 si 107 | Cod sursa (job #310068)
Cod sursa(job #310068)
program p1;
var f,g:text;
a:array[0..100] of integer;
i,c,t,nn,lg,p,q:integer;
n:string[101];
begin
assign(f,'cifra.in');reset(f);
assign(g,'cifra.out');rewrite(g);
for i:=1 to 100 do
begin
c:=i mod 10;
case c of
0: a[i]:=a[i-1];
1: a[i]:=(a[i-1]+1) mod 10;
5: a[i]:=(a[i-1]+5) mod 10;
6: a[i]:=(a[i-1]+6) mod 10;
4: case i mod 2 of
0: a[i]:=(a[i-1]+6) mod 10;
1: a[i]:=(a[i-1]+4) mod 10;
end;
9: case i mod 2 of
1: a[i]:=(a[i-1]+9) mod 10;
0: a[i]:=(a[i-1]+1) mod 10;
end;
2: case i mod 4 of
0: a[i]:=(a[i-1]+6) mod 10;
1: a[i]:=(a[i-1]+2) mod 10;
2: a[i]:=(a[i-1]+4) mod 10;
3: a[i]:=(a[i-1]+8) mod 10;
end;
3: case i mod 4 of
0: a[i]:=(a[i-1]+1) mod 10;
1: a[i]:=(a[i-1]+3) mod 10;
2: a[i]:=(a[i-1]+9) mod 10;
3: a[i]:=(a[i-1]+7) mod 10;
end;
7: case i mod 4 of
0: a[i]:=(a[i-1]+1) mod 10;
1: a[i]:=(a[i-1]+7) mod 10;
2: a[i]:=(a[i-1]+9) mod 10;
3: a[i]:=(a[i-1]+3) mod 10;
end;
8: case i mod 4 of
0: a[i]:=(a[i-1]+6) mod 10;
1: a[i]:=(a[i-1]+8) mod 10;
2: a[i]:=(a[i-1]+4) mod 10;
3: a[i]:=(a[i-1]+2) mod 10;
end;
end;
end;
readln(f,t);
for i:=1 to t do
begin
readln(f,n);
p:=0;
lg:=length(n);
q:=ord(n[lg])-ord('0');
if lg>1 then p:=ord(n[lg-1])-ord('0');
nn:=p*10+q;
writeln(g,a[nn]);
end;
close(g);
end.