Cod sursa(job #163105)

Utilizator LoLFactorPascu Vlad LoLFactor Data 21 martie 2008 13:42:34
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.11 kb
#include<fstream.h>

int ult(int baza, long exp){
    switch(baza){
	case 1:
	    return 1;
	case 2:
	    switch(exp % 4){
		case 0: return 6;
		case 1: return 2;
		case 2: return 4;
		case 3: return 8;
	    }
	case 3:
	    switch(exp % 4){
		case 0: return 1;
		case 1: return 3;
		case 2: return 9;
		case 3: return 7;
	    }
	case 4:
	    switch(exp % 2){
		case 0: return 6;
		case 1: return 4;
	    }
	case 5:
	    return 5;
	case 6:
	    return 6;
	case 7:
	    switch(exp % 4){
		case 0: return 1;
		case 1: return 7;
		case 2: return 9;
		case 3: return 3;
	    }
	case 8:
	    switch(exp & 4){
		case 0: return 6;
		case 1: return 8;
		case 2: return 4;
		case 3: return 2;
	    }
	case 9:
	    switch(exp % 2){
		case 0: return 1;
		case 1: return 9;
	    }
    }
return 0;
}

int main(){
    int t;
    long n, rezultat;
    fstream in("cifra.in", ios::in), out("cifra.out", ios::out);

    in >> t;

    for(int i = 0; i < t; i++){
	rezultat = 0;
	in >> n;
	for(int j = 1; j <= n; j++){
	rezultat += ult(j % 10, j);
	}
    out << rezultat % 10 << endl;
    }
}