Pagini recente » Cod sursa (job #524592) | Cod sursa (job #224602) | Cod sursa (job #1053188) | Cod sursa (job #317994) | Cod sursa (job #1800260)
# include <iostream>
# include <fstream>
# include <string>
using namespace std;
int pow( int b, int p )
{
int r = 1;
while ( p > 0 ) {
if ( p & 1 )
r = r * b % 10;
p /= 2;
b = b * b % 10;
}
return r;
}
int main()
{
ifstream fin( "cifra.in" );
ofstream fout( "cifra.out" );
int n, k, x, s, t, i;
string str;
t = 0;
for ( i = 1; i <= 20; i ++ )
t = ( t + pow( i, i ) ) % 10;
fin >> n;
for ( k = 0; k < n; k ++ ) {
fin >> str;
x = 0;
for ( i = 0; i < str.size(); i ++ )
x = ( x * 10 + str[i] - '0' ) % 2000;
s = x / 20 * t % 10;
for ( i = 1; i <= x % 20; i ++ )
s = ( s + pow( i, i ) ) % 10;
fout << s << '\n';
}
fin.close();
fout.close();
return 0;
}