Pagini recente » Rating Stoianovici Horatiu Andrei (horeste12) | Rating Crecana Constantin Cosmin (Crecana_Constantin_Cosmin_321CA) | Rating Stanciu Catalin (Stanciu_Catalin_322CA) | Robert Hangu | Cod sursa (job #306469)
Cod sursa(job #306469)
// ultima cifra a lui x^y se repeta din 4 in 4 (in cel mai rau caz)
// (x^x)=((x+100)^(x+100)) modulo 100
// 1^1 + 2^2 +....+ 99^99=0
#include <fstream.h>
#include <math.h>
#include <string.h>
ifstream f("cifra.in");
ofstream g("cifra.out");
char nr[101];
int v[100],v2[10][4];
void generare ()
{ int i,j;
for (i=1; i<=9; i++)
{ v2[i][0]=(int)(pow(i,4))%10;
for (j=1; j<=3; j++)
v2[i][j]=(int)(pow(i,j))%10;
}
v[0]=0;
for (i=1; i<=99; i++)
v[i]=(v[i-1]+v2[i%10][i%4])%10;
}
int main ()
{ int t,uc,pc;
generare ();
f>>t; f.get ();
for (int i=1; i<=t; i++)
{ f.getline (nr,101);
if (strlen(nr)==1) pc=0;
else
pc=nr[strlen(nr)-2]-'0';
uc=nr[strlen(nr)-1]-'0';
g<<v[pc*10+uc]<<'\n';
}
return 0;
}