Cod sursa(job #1037442)

Utilizator Mitsa3Neamt Mihai Mitsa3 Data 20 noiembrie 2013 11:27:33
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <iostream>
#include <fstream>
#include <string.h>
using namespace std;
ifstream fin("cifra.in");
ofstream fout("cifra.out");
int pow(int a, int p)
{
    int rez=1;
    while(p)
    {
        if(p&1)
            {
                rez*=a;
                rez%=10;
            }

        a*=a;
        a%=10;
        p>>=1;
    }
    return rez;
}
int main()
{
    int t,i,rez[102],nr,g;
    fin >> t;
    rez[0]=0;
    for(i=1;i<=100;i++)
    {
        rez[i]=rez[i-1]+pow(i%10,i);
        rez[i]%=10;
    }
    char a[103];
    fin.get(a[0]);
    for(i=1;i<=t;i++)
    {
        nr=0;
        fin.getline(a,102);
        g=strlen(a);
        if(g==1)
            nr=a[0]-'0';
        else
            nr=(a[g-2]-'0')*10+a[g-1]-'0';
        fout << rez[nr] << "\n";
    }
    return 0;
}