Cod sursa(job #33042)

Utilizator MirageRobert Sandu Mirage Data 18 martie 2007 20:53:55
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include<stdio.h>
int main () {
	unsigned long v[100],c,u,i,t,n,a=0,w[100];
	FILE *in=fopen("cifra.in","r"), *out=fopen("cifra.out","w");
	fscanf(in,"%lu",&t);
	for(i=1;i<=99;i++){
		c=i;
		u=i%10;
		while(c>1){
			u=(u*u)%10;
			c-=2;
		}
		if(c==1)
			u=(u*i)%10;
		a+=u;
		a=a%10;
		v[i]=a;
	}
	a=0;
	for(i=101;i<200;i++){
		c=i;
		u=i%10;
		while(c>1){
			u=(u*u)%10;
			c-=2;
		}
		if(c==1)
			u=(u*i)%10;
		a+=u;
		a=a%10;
		w[i%100]=a;
	}
	while(t){
		fscanf(in,"%lu",&n);
		if(n<=100)
			if(n)
				fprintf(out,"%lu\n",v[n]);
			else
				fprintf(out,"%lu\n",v[99]);
		else
			if(n)
				fprintf(out,"%lu\n",w[n%100]);
			else
				fprintf(out,"%lu\n",w[99]);
		t--;
	}
	fclose(in);
	fclose(out);
	return 0;
}