Pagini recente » Cod sursa (job #1128968) | Cod sursa (job #1852314) | Cod sursa (job #148538) | Rating Greg mister (Mar3C10canar) | Cod sursa (job #1853705)
#include <cstdio>
#include <cstdlib>
#include <cassert>
#include <vector>
#include <cstring>
#include <cctype>
#include <algorithm>
using namespace std;
#ifdef INFOARENA
#define ProblemName "cifra"
#endif
#define MCONCAT(A, B) A B
#ifdef ProblemName
#define InFile MCONCAT(ProblemName, ".in")
#define OuFile MCONCAT(ProblemName, ".out")
#else
#define InFile "fis.in"
#define OuFile "fis.out"
#endif
typedef long long LL;
int prec[] = { 0, 1, 4, 7, 6, 5, 6, 3, 6, 9, 0, 1, 6, 3, 6, 5, 6, 7, 4, 9 };
char buf[110];
int toint(char *c) {
int ans = 0;
for (char *i = c; *i; ++i)
ans = ans * 10 + ((*i) - '0');
return ans;
}
int main() {
assert(freopen(InFile, "r", stdin));
assert(freopen(OuFile, "w", stdout));
int sprec = 0;
for (int i = 0; i < 20; ++i)
sprec += prec[i];
sprec %= 10;
//sprec e 4 deci ma intereseaaza doar ultima suta!
int T;
scanf("%d", &T);
while (T--) {
scanf("%s", buf);
int L = strlen(buf);
char *c = buf;
if (L >= 3)
c = buf + L - 2;
int k = toint(c);
int ans = 0;
for (int i = 1; i <= k; ++i)
ans += prec[i % 20];
ans %= 10;
printf("%d\n", ans);
}
return 0;
}