Cod sursa(job #163094)

Utilizator LoLFactorPascu Vlad LoLFactor Data 21 martie 2008 13:21:05
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.12 kb
#include<fstream>
using namespace std;

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, 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;
    }
}