Pagini recente » Cod sursa (job #2422643) | Cod sursa (job #448112) | Cod sursa (job #2901617) | Cod sursa (job #1442851) | Cod sursa (job #1518435)
// 1^1 + 2^2 + ... + 99^99 mod 10 = 0
// x ^ x mod 10 = x ^ (x+4) mod 10 deci x^x = (x + 100)^(x+100) mod 10
#include <cstring>
#include <cstdio>
using namespace std;
char s[105];
int v[105];
int n, i, j, p, t, x;
int main() {
v[0] = 0;
for (i=1;i<=99;i++) {
p = 1;
for (j=1;j<=i;j++)
p = (p * i) % 10;
v[i] = (v[i-1] + p) % 10;
}
FILE *fin = fopen("cifra.in" ,"r");
FILE *fout = fopen("cifra.out","w");
fscanf(fin,"%d\n",&t);
while (t--) {
fgets(s, 103, fin);
if (s[strlen(s)-1] == '\n')
s[strlen(s)-1] = 0;
if (strlen(s) == 1)
x = s[0]-'0';
else
x = (s[ strlen(s)-2 ] - '0') * 10 + s[ strlen(s)-1 ] - '0';
fprintf(fout,"%d\n",v[x]);
}
return 0;
}