Cod sursa(job #214460)

Utilizator mihnea_andreiMihnea Andrei mihnea_andrei Data 14 octombrie 2008 17:28:08
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include<fstream> 

int a[25];

using namespace std; 

ifstream in ("cifra.in");

void precalcul()
{
	int i,j; 
	for(i=1;i<20;i++) 
	{
		a[i]=1;
		for(j=1;j<=i;j++)
			a[i]*=i;
		a[i]=(a[i-1]+a[i])%10; 
	} 
}

int citeste ()
{ 
	char sir[105]; 
	int n; 
	in>>sir; 
	n=strlen (sir); 
	if(n==1) 
		return sir[0]-'0';
	return sir[n-1]-'0'+(sir[n-2]-'0')*10; 
} 

/*
int putere (int a,int b) 
{ 
	int i,p=1;
	for(i=1;i<=b;i++) 
		p=p*a%10;
	return p; 
} 
*/
int main ()
{ 
	int s=0,n; 
	ofstream out("cifra.out"); 
	int t;
	precalcul();
	in>>t;
	while(t--)
	{
		n=citeste();
		s=n/20*4+a[n%20];
		/*
		for(i=1;i<=n%20;i++) 
			s=s+putere(i,i); 
		*/
		out<<s%10<<"\n"; 
	}
	in.close();
	out.close();
	return 0; 
}