Cod sursa(job #505792)

Utilizator vendettaSalajan Razvan vendetta Data 3 decembrie 2010 23:57:25
Problema Cifra Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.83 kb
var
    f,g:text;
    s:string;
    pc,i,t,aux,uc:integer;
    v:array[0..99] of integer;

function putere(a,n:integer):integer;
    var
        p:integer;
    begin
        p:=1;
        while n<>0 do
            begin
            if n mod 2=1 then p:=(p*a);
            a:=a*a;
            n:=n div 2;
            end;
        putere:=p mod 10;
    end;

begin
    assign(f,'cifra.in');reset(f);
    assign(g,'cifra.out');rewrite(g);
    readln(f,t);
    v[0]:=0;
    for i:=1 to 99 do
        v[i]:=(v[i-1]+putere(i mod 10,i)) mod 10;
    uc:=0;
    for i:=1 to t do
        begin
        readln(f,s);
        val(s[length(s)],uc,aux);
        if length(s)>1 then
            val(s[length(s)-1],pc,aux)
        else
            pc:=0;
        writeln(g,v[pc*10+uc]);
        end;

    close(f);close(g);
end.