Pagini recente » Cod sursa (job #2351521) | Cod sursa (job #48793) | Cod sursa (job #2326601) | Cod sursa (job #2638373) | Cod sursa (job #2919243)
#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 % 2 == 1)
p = (p *(a % 10)) % 10;
a = (a * (a % 10)) % 10;
b /= 2;
}
return p;
}
int 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 << vlast[rest] << '\n';
}
return 0;
}