Cod sursa(job #382301)

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