Pagini recente » Profil Livcristi | Cod sursa (job #461108) | Cod sursa (job #1290915) | Cod sursa (job #1776670) | Cod sursa (job #811076)
Cod sursa(job #811076)
#include<stdio.h>
#include<math.h>
#include<string.h>
char a[110];
int last[110];
int main()
{
freopen("cifra.in","r",stdin);
freopen("cifra.out","w",stdout);
int t,i,n,j,nameless_val;
//last[i]= U(i^i)
for(i=1;i<=99;i++)
{
last[i]=1;
for(j=1;j<=i;j++)
last[i]=(last[i]*i)%10;
}
//last[i] devine U(1^1 + 2^2 + 3^3 + ... + i^i)
for(i=1;i<=99;i++)
{
last[i]=last[i]+last[i-1];
if(last[i]>=10)
last[i]=last[i]-10;
}
//daca iau doar ultima cifra in considerare, dracu stie de ce nu merge, asa ca le iau pe ultimele 2
scanf("%d\n",&t);
for(i=1;i<=t;i++)
{
gets(a);
n=strlen(a);
if(n>1)
nameless_val=(a[n-1]-'0')*10+a[n]-'0';
else
nameless_val=a[n-1]-'0';
printf("%d\n",last[nameless_val]);
}
return 0;
}