Cod sursa(job #1612837)

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

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

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

int main()
{
    in>>n;
    for(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;
}