Pagini recente » Cod sursa (job #332868) | Cod sursa (job #2574608) | Cod sursa (job #2105149) | Cod sursa (job #1778939) | Cod sursa (job #2327069)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("cifra.in");
ofstream cout("cifra.out");
int pw(int b, int e) {
int ans(1);
if (e == 0)
e = 4;
while (e) {
ans = ans * b % 10;
e--;
}
return ans;
}
int main()
{
int q;
string n;
cin >> q;
while (q--) {
cin >> n;
int ans(0);
reverse(n.begin(), n.end());
if (n.size() >= 2) {
for (int j = 1; j <= n[0] - '0'; ++j) {///analizam ultima grupa
ans += pw(j % 10, (j + (n[1] - '0') % 2 * 2) % 4);
if (ans >= 10)
ans -= 10;
}
}
else {
for (int j = 1; j <= n[0] - '0'; ++j) {
ans += pw(j % 10, j % 4);
if (ans >= 10)
ans -= 10;
}
}
cout << (ans + 7 * (n[1] - '0')) % 10 << '\n';
}
return 0;
}