Cod sursa(job #374885)

Utilizator RengelBotocan Bogdan Rengel Data 18 decembrie 2009 16:57:09
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.11 kb
#include<fstream.h>
ifstream fin("cifra.in");
ofstream fout("cifra.out");
unsigned t,i,n,s,j,jw;
int main(){
	fin>>t;
	for(i=1;i<=t;i++){
		fin>>n;
		s=0;
		for(j=1;j<=n;j++){
			/*
			jw=j%10;
			if(jw%4==1 || jw%10==6 || jw%10==0) s=s+jw%10;
			else if(jw%4==2) s=s+4;
			else if(jw%4==3){
				if(jw%10==3) s=s+7;
				else s=s+3;
			}
			else s=s+6;
			*/
			if(j%10==5 || j%10==6 || j%10==9 || j%10==1) s=s+j%10;
			else if(j%10==4) s=s+6;
			else{
				jw=j%100;
				if(jw%10==2){
					if(jw%4==1) s=s+2;
					else if(jw%4==2) s=s+4;
					else if(jw%4==3) s=s+8;
					else if(jw%4==0) s=s+6;
				}
				else if(jw%10==3){
					if(jw%4==1) s=s+3;
					else if(jw%4==2) s=s+9;
					else if(jw%4==3) s=s+7;
					else if(jw%4==0) s=s+1;
				}
				else if(jw%10==7){
					if(jw%4==1) s=s+7;
					else if(jw%4==2) s=s+9;
					else if(jw%4==3) s=s+3;
					else if(jw%4==0) s=s+1;
				}
				else{
					if(jw%4==1) s=s+8;
					else if(jw%4==2) s=s+4;
					else if(jw%4==3) s=s+2;
					else if(jw%4==0) s=s+6;
				}
			}
		}
		fout<<s%10<<'\n';
	}
	fin.close();
	fout.close();
	return 0;
}