Cod sursa(job #1124294)

Utilizator 0051David Sera 0051 Data 26 februarie 2014 11:59:17
Problema Cifra Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <iostream>
#include <fstream>
#include <string.h>

using namespace std;

ifstream fin("cifra.in");
ofstream fout("cifra.out");

long long int pow(long long int baza,long long int exp)
{
    long long int p=1;
    while(exp)
    {
        if(exp&1)
            p=(p*baza)%10;
        baza=(baza*baza)%10;
        exp>>=1;
    }
    return p%10;
}

int main()
{
    int s[102];
    int i,n,j;
    int b=0;
    char x[102];
    for(i=1;i<101;i++)
    {
        b+=(pow(i%10,i));
        if(b>9)
            b%=10;
        s[i]=b;
    }
    fin>>n;
    fin.getline(x,105);
    for(j=0;j<n;j++){
        fin.getline(x,105);
        if(strlen(x)>=2)
            fout<<s[(x[strlen(x)-2]-'0')*10+(x[strlen(x)-1]-'0')]<<"\n";
        else
            fout<<s[x[0]-'0']<<"\n";
    }
    fin.close();
    fout.close();
    return 0;
}