Pagini recente » Cod sursa (job #1087388) | Cod sursa (job #2404368) | Cod sursa (job #2492836) | Cod sursa (job #1173412) | Cod sursa (job #1401384)
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
//returns last digit of pow(a,a)
int LD(long a){
int uc_init = a%10;
int rez=1;
long i;
for(i=1;i<=a;i++){
rez=(rez*uc_init)%10;
}
return rez;
}
len[10]={1,1,4,4,2,1,1,4,4,2};
int v[10][5];
int sol[101];
void innit(){
int i,k,p=1;
for(i=0;i<=9;i++){
p=1;
for(k=0;k<=3;k++){
p=(p*i)%10;
v[i][k]=p;
}
}
// for(i=0;i<=9;i++){
// printf("%d : ",i);
// for(k=0;k<len[i];k++){
// printf("%d ",v[i][k]);
// }
// printf("\n");
// }
}
int Uc(int n){
return v[n%10][(n+3)%100%4];
}
void All_sol(){
int i;
for(i=0;i<=100;i++){
sol[i]=Uc(i);
}
}
int main()
{
int T;
int n;
char nr[3];
innit();
All_sol();
FILE *f=fopen("cifra.in","r");
FILE *g=fopen("cifra.out","w");
fscanf(f,"%d",&T);
nr[2]=fgetc(f);
while(T--){
nr[0]='0';
nr[1]='0';
nr[2]=fgetc(f);
// fscanf("%c",nr[2]);
while(nr[2]!='\n'){
nr[0]=nr[1];
nr[1]=nr[2];
nr[2]=fgetc(f);
}
nr[2]='\0';
n=atoi(nr);
fprintf(g,"%d\n", sol[n] );
// printf("%s\n",nr );
//T--;
}
return 0;
}