Pagini recente » Cod sursa (job #452453) | Cod sursa (job #993250) | Cod sursa (job #658800) | Cod sursa (job #2888032) | Cod sursa (job #2393820)
#include <fstream>
#include <string>
using namespace std;
ifstream fin( "cifra.in" );
ofstream fout( "cifra.out" );
int T;
string S;
int sol[101];
int LastDigit( int nr, int poww )
{
nr = nr % 10;
poww = poww % 4;
if( nr == 1 ) return 1;
if( nr == 2 )
{
if( poww == 1 ) return 2;
if( poww == 2 ) return 4;
if( poww == 3 ) return 8;
if( poww == 0 ) return 6;
}
if( nr == 3 )
{
if( poww == 1 ) return 3;
if( poww == 2 ) return 9;
if( poww == 3 ) return 7;
if( poww == 0 ) return 1;
}
if( nr == 4 )
{
if( poww == 1 ) return 4;
if( poww == 2 ) return 6;
if( poww == 3 ) return 4;
if( poww == 0 ) return 6;
}
if( nr == 5 ) return 5;
if( nr == 6 ) return 6;
if( nr == 7 )
{
if( poww == 1 ) return 7;
if( poww == 2 ) return 9;
if( poww == 3 ) return 3;
if( poww == 0 ) return 1;
}
if( nr == 8 )
{
if( poww == 1 ) return 8;
if( poww == 2 ) return 4;
if( poww == 3 ) return 2;
if( poww == 0 ) return 6;
}
if( nr == 9 )
{
if( poww == 1 ) return 9;
if( poww == 2 ) return 1;
if( poww == 3 ) return 9;
if( poww == 0 ) return 1;
}
}
int main()
{
fin >> T;
int NR;
for( int i = 0; i <= 99; ++i )
{
for( int j = 1; j <= i; ++j )
sol[i] = ( sol[i] + LastDigit( j, j ) ) % 10;
}
for( int i = 1; i <= T; ++i )
{
fin >> S;
if( S.size() == 1 ) NR = S[0] - '0';
else NR = ( S[S.size() - 2] - '0' ) * 10 + S[ S.size() - 1 ] - '0';
fout << sol[NR] << '\n';
}
return 0;
}