Pagini recente » Cod sursa (job #250476) | Cod sursa (job #725687) | Cod sursa (job #636097) | Cod sursa (job #2347913) | Cod sursa (job #2919250)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("cifra.in");
ofstream fout("cifra.out");
int lgput(int a, int b)
{
int p = 1;
while(b > 0)
{
if((b & 1) == 1)
p = (p *(a % 10)) % 10;
a = (a * (a % 10)) % 10;
b >>= 1;
}
return p;
}
char vlast[101];
signed main()
{
int t, i;
fin >> t;
fin.get();
int lastm20;
vlast[0] = 0;
for(i = 1; i <= 100; i++)
vlast[i] = (vlast[i - 1] + lgput(i, i)) % 10;
for(i = 0; i < t; i++)
{
int rest = 0;
char p, q, ch;
p = q = '0';
fin.get(ch);
while(ch != '\n')
{
p = q;
q = ch;
fin.get(ch);
}
rest = ((p - '0') * 10 + q - '0') % 100;
fout << (int)vlast[rest] << '\n';
}
return 0;
}