Pagini recente » Cod sursa (job #31434) | Cod sursa (job #3329552) | Cod sursa (job #6581) | Cod sursa (job #12356) | Cod sursa (job #3348282)
#include <fstream>
#include <string>
using namespace std;
const int K = 20;
int u_cif[K+1];
int ultima_cifra_suma(int n)
{
return ((n / K) * u_cif[K] + u_cif[n%K]) % 10;
}
int main()
{
for (int i = 1; i <= K; i++)
{
int p = 1;
for (int j = 0; j < i; j++)
{
p = (p * i) % 10;
}
u_cif[i] = (u_cif[i-1] + p) % 10;
}
ifstream in("cifra.in");
ofstream out("cifra.out");
int t;
in >> t;
for (int i = 0; i < t; i++)
{
string s;
in >> s;
if (s.length() >= 2)
{
s = s.substr(s.length() - 2);
}
int n = stoi(s);
out << ultima_cifra_suma(n) << "\n";
}
in.close();
out.close();
return 0;
}