Cod sursa(job #398297)

Utilizator razvanuzuCiocoiu Razvan-Andrei razvanuzu Data 18 februarie 2010 13:35:51
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 2.56 kb
#include <fstream.h>
long n,s,i,ucifi,r,t,u,c; 
ifstream fin("cifra.in"); 
ofstream fout("cifra.out"); 
int main() 
{     
	fin>>t;     
	for (c=1;c<=t;c++) 
	{ 
		fin>>n;        
		s=0; 
		for(i=1;i<=n;i++)       
		{           
			ucifi=i%10;             
			switch(ucifi)          
			{   
			case 0: u=0; break;           
			case 1: u=1; s=s+u; break;           
			case 2: r=i%4;            
				if(r==0)                 
				{
					u=6; s=s+u;
				}
				else                  
					if(r==1)                        
					{
						u=2; s=s+u;
					}
					else                      
						if(r==2)                            
						{
							u=4; s=s+u;
						}
						if (r==3)                               
						{
							u=8; s=s+u;
						}
						break;           
			case 3: r=i%4;            
				if(r==0)                 
				{
					u=1; s=s+u;
				}
				else                  
					if(r==1)                        
					{
						u=3; s=s+u;               
					}
					else                      
						if(r==2)                            
						{
							u=9; s=s+u;                   
						}
						if (r==3)                          
						{
							u=7; s=s+u;
						}
						break;           
			case 4:             
				if(i%2)                
				{
					u=4; s=s+u;
				}
				else                  
				{
					u=6; s=s+u;                
				}
				break;
			case 5: u=5; s=s+u; break;             
			case 6: u=6; s=s+u; break;    
			case 7: r=i%4;            
				if(r==0)          
				{
					u=1; s=s+u;
				}
				else                  
					if(r==1)                        
					{
						u=7; s=s+u;
					}
					else                      
						if(r==2)                            
						{
							u=9; s=s+u;                  
						}
						if (r==3)                      
						{
							u=3; s=s+u;
						}
						break;           
			case 8: r=i%4;            
				if(r==0)         
				{
					u=6; s=s+u;           
				}
				else                  
					if(r==1)                        
					{
						u=8; s=s+u;               
					}
					else                      
						if(r==2)                            
						{
							u=4; s=s+u;
						}
						else                          
						{
							u=2; s=s+u;
						}
						break;                            
			case 9:
				if(i%2==0)              
				{
					u=1; s=s+u;
				}
				else                  
				{
					u=9; s=s+u;
				}
			}           
			//s=(s+u)%10;      
		}         
		fout<<s%10<<"\n";     
	} 
	return 0; 
}