Pagini recente » Cod sursa (job #2428222) | Cod sursa (job #734730) | Cod sursa (job #36445) | Cod sursa (job #1038466) | Cod sursa (job #2635554)
#include <fstream>
using namespace std;
ifstream fin("cifra.in");
ofstream fout("cifra.out");
string s;
long long sp[105];
long long lg_pow(long long base, long long exp)
{
long long pow =1;
while(exp)
{
if(exp & 1)
pow = (pow * base)%10;
base = (base * base)%10;
exp = exp>>1;
}
return pow;
}
void precalc()
{
long long i;
for(i=1;i<=100;i++)
{
sp[i] = (sp[i-1] + lg_pow(i, i))%10;
}
}
int main()
{
int t, ind;
precalc();
fin>>t;
for(int o = 1; o <= t; o++)
{
fin>>s;
if(s.size() <= 1)
ind = (int)(s[s.size()-1] - '0');
else
ind = (int)(s[s.size()-2] - '0') * 10 + (int)(s[s.size()-1] - '0');
fout<<sp[ind]<<"\n";
}
return 0;
}