Cod sursa(job #303920)

Utilizator ErgoVicol Sergiu Constantin Ergo Data 10 aprilie 2009 15:14:11
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <fstream>
#include <string.h>
#define REP 105
using namespace std;

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

int U[REP], N, S,a;
char s[REP];
int main()
{
    long long i, k, j;
    for (i = 1; i <= 100; i++)
    {
        for (k = 1,j = 1; j <= i; j++)
            k = (k*i)%10;
        U[i] = (S+=k)%10;
    }
    fin >>N;
    fin.getline(s,REP);
    for (i = 1; i <= N; i++)
    {
        fin.getline(s,REP);
        if (strlen(s) < 3)
        {
            if (strlen(s) == 1)
                fout <<U[(int)s[0] - 48] <<'\n';
            if (strlen(s) == 2)
            {
                a = U[((int)s[0] - 48) * 10 + (int)s[1] - 48];
                fout <<a <<'\n';
            }
        }
        else
        {
            int l = strlen(s);
            a = (int)s[l-1] - 48 + ((int)s[l-2] - 48) * 10;
            fout<<U[a]<<'\n';
        }
    }
    
    fout.close();
    return 0;
}