Cod sursa(job #1184251)

Utilizator sorin2kSorin Nutu sorin2k Data 11 mai 2014 21:22:53
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include<fstream>
#include<string>
using namespace std;

ifstream fin("cifra.in");
ofstream fout("cifra.out");

string nr;
int resturi[10][5], partial[10];

void calculeaza_resturi() {
	int i, j, x;
	for(i = 0; i < 10; i++) {
		x = 1;
		for(j = 1; j <= 4; j++) {
			x *= i;
			resturi[i][j] = x % 10;
		}
		resturi[i][0] = resturi[i][4];
	}
}

int main() {
	int t, it, len, i, ans;
	calculeaza_resturi();
//	int j;
/*	for(i = 0; i < 10; i++) {
		for(j = 1; j <= 4; j++) {
			fout << resturi[i][j] << " ";
		}
		fout << endl;
	}
	fout << endl << endl;*/
	for(i = 1; i < 10; i++) {
		partial[i] += partial[i-1] + resturi[i][i%4];
	//	fout << partial[i] << " ";
	}
	fin >> t;
	for(it = 0; it < t; it++) {
		fin >> nr;
		len = nr.length();
		if(len > 1) {
			ans = (nr[len-2] - '0') * partial[9];
		}
		else ans = 0;
		ans += partial[nr[len-1] - '0'];
		fout << ans % 10 << "\n";
	}
}