Cod sursa(job #1403356)

Utilizator victor1Vasilescu Victor victor1 Data 27 martie 2015 11:12:00
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;

ifstream f("cifra.in");
ofstream g("cifra.out");

const int m = 100;

int a[m+1];

int lw(int v, int p)
{
    if(p == 1)
        return v%10;
    if((p&1) == 0)
        return lw(v*v%10,p/2)%10;
    return v*lw(v*v%10,p/2)%10;
}

int main()
{
    int o;
    for(int i = 1; i <= 100; i++)
        a[i] = (lw(i,i)%10+a[i-1])%10;

    int n;
    char s[m+1];
    f >> n;
    int l;
    while(n > 0)
    {
        f >> s;
        l = strlen(s);
        if(l > 1)
            g<< a[(s[l-2]-'0')*10+s[l-1]-'0'] << "\n";
        else
            g << a[s[0]-'0']%10 << "\n";
        n--;
    }
    return 0;
}