Cod sursa(job #135190)
| Utilizator | Data | 13 februarie 2008 12:01:42 | |
|---|---|---|---|
| Problema | Cifra | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.51 kb |
#include <stdio.h>
#include <string.h>
int main()
{
int lung,n,i,k,z,j;
long v[20];
v[1]=1;
for (i=2; i<=20; i++)
{
z=1;
for (j=1; j<=i; j++)
{
z=z*i;
if (z>10)
z=z%10;
}
v[i]=(v[i-1]+z)%10;
}
freopen("cifra.in","r",stdin);
freopen("cifra.out","w",stdout);
char s[101];
scanf("%d\n",&n);
for (i=1; i<=n; i++)
{
gets(s);
lung=strlen(s);
if (lung==1)
k=s[0]-'0';
else
k=10*(s[lung-2]-'0')+(s[lung-1]-'0');
printf("%d\n",v[k%20]);
}
return 0;
}