Cod sursa(job #552574)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 12 martie 2011 16:25:29
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<iostream.h>
#include<fstream.h>
#include<string.h>
char s[102];
long t,i;
int m,n,v[101];
int put(int n)
{int x1=n,x2=n*n,t=n,i=0,v[10],j;
while(t!=1)
       {v[i++]=t%2;
       t/=2;}
for(j=i-1;j>=0;j--)
if(v[j]==0)
       {x2=(x1*x2)%10;
       x1=(x1*x1)%10;}
else
       {x1=(x1*x2)%10;
       x2=(x2*x2)%10;}
return x1%10;}

void vect(int v[101])
{int i;
v[0]=0;
for(i=1;i<100;i++)
       v[i]=(v[i-1]+put(i))%10;}

int main()
{ifstream f1("cifra.in");
ofstream f2("cifra.out");
f1>>t;
vect(v);
for(i=1;i<=t;i++)
       {f1>>s;
       m=strlen(s);
       n=(s[m-2]-'0')*10+(s[m-1]-'0');
       f2<<v[n]<<endl;}
fclose(stdin);
fclose(stdout);
return 0;}