Pagini recente » Cod sursa (job #1361871) | Cod sursa (job #2564377) | Cod sursa (job #1857526) | Cod sursa (job #490546) | Cod sursa (job #942098)
Cod sursa(job #942098)
//problema facuta in lipsa de ocupatie
#include<cstdio>
#include<cstring>
FILE *f=fopen("cifra.in","r");
FILE *g=fopen("cifra.out","w");
using namespace std;
char s[105];
int tests;
int last[105];
void preprocess ( void )
{
for(int i(1) ; i <= 99 ; ++i )
{
int Sum=1;
for(int ii(1) ;ii <= i ; ++ii )
Sum=(Sum*i)%10;
last[i]=( Sum+last[i-1])%10;
}
}
int main ( void )
{
preprocess();
fscanf(f,"%d",&tests);
while( tests )
{
fscanf(f,"%s",&s);
int len=strlen(s);
int numb;
if( len == 1 )
numb=(int)(s[len-1]-'0');
else
numb=(int)((s[len-2]-'0'))*10+(int)(s[len-1]-'0');
fprintf(g,"%d\n",last[numb]);
--tests;
}
fclose(f);
fclose(g);
return 0;
}