Cod sursa(job #1612805)

Utilizator c0mradec0mrade c0mrade Data 25 februarie 2016 01:15:47
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<fstream>
#include<string.h>
using namespace std;
ifstream in("cifra.in");
ofstream out("cifra.out");

int n,v[101];
char s[101];

int lg_pow(int x)
{
    int p=x,pow=1;
    while(p)
    {
        if(p%2==1) pow=(x*pow)%10;
        x=(x*x)%10;
        p/=2;
    }
    return pow;
}

int main()
{
    in>>n;
    for(int i=1;i<=100;++i)
    {
        v[i]=(v[i-1]+lg_pow(i))%10;
    }
    while(n--)
    {
        in>>(s+1);
        int l=strlen(s+1);
        if(l==1) out<<v[s[l]-'0']<<'\n';
        else out<<v[(s[l]-'0')+(s[l-1]-'0')%10]<<'\n';
    }
    return 0;
}