Pagini recente » Cod sursa (job #2410757) | Cod sursa (job #1421282) | Cod sursa (job #2583000) | Cod sursa (job #1341941) | Cod sursa (job #1777793)
#include <cstdio>
#include <cmath>
using namespace std;
FILE * fin = fopen("cifra.in", "r");
FILE * fout = fopen("cifra.out", "w");
unsigned int a[10000];
int cifra(int x)
{
int s=0, j;
for(int i=1;i<=x;i++)
{
j=i%10;
s+=pow(j,i);
}
return s%10;
}
int main()
{
int t, x, y;
fscanf(fin, "%d", &t);
while(t--)
{
fscanf(fin, "%d", &x);
if(a[x]-1==0 && x>0){
y=cifra(x);
a[x]=y;
}
else
{
y=a[x-1]+pow(x,x);
y%=10;
a[x]=y;
}
fprintf(fout, "%d", y);
fprintf(fout, "%c", '\n');
}
return 0;
}