Pagini recente » Cod sursa (job #614739) | Cod sursa (job #100385) | Cod sursa (job #672538) | Cod sursa (job #338489) | Cod sursa (job #982533)
Cod sursa(job #982533)
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
ifstream fin ("cifra.in");
ofstream fout("cifra.out");
int b[101];
unsigned int u(long long int n)
{
return n%10;
}
long long int pow(long long int n, long long int exp)
{
long long int p=1;
while(exp)
{
if((exp&1)==1)
{
p*=n;
p=u(p);
}
n*=n;
n=u(n);
exp>>=1;
}
return p;
}
int main()
{
int i, t, n, x;
char c[101];
for(i=1;i<=100;i++)
b[i]=u(u(pow(u(i), i))+b[i-1]);
fin>>t;
for(i=1;i<=t;i++)
{
fin>>c;
n=((string)c).length();
x=0;
if(n==1)
fout<<b[c[0]-'0']<<"\n";
else
fout<<b[(c[n-2]-'0')*10+c[n-1]-'0']<<"\n";
}
return 0;
}