Cod sursa(job #529774)

Utilizator DaninetDani Biro Daninet Data 5 februarie 2011 22:58:26
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <cstdio>
#include <cstring>
int data[100];

int power(int x) {
	int aux = x;
	for(int i = 1; i<x; ++i)
		aux = (aux * x)%10;
	return aux;
}

int main() {
	FILE *f, *g;
	f = fopen("cifra.in", "r");
	g = fopen("cifra.out", "w");
	
	data[0] = 1;
	for(int i = 1; i<100; ++i) 
		data[i] = (data[i-1] + power(i+1))%10;
		
	int n;
	fscanf(f, "%d", &n);
	char s[102];
	
	for(int i = 0; i<n; ++i) {
		fscanf(f, "%s", s);
		if(strlen(s) == 1) 
			fprintf(g, "%d\n", data[s[0] - 48 - 1]);
		else
			fprintf(g, "%d\n", data[(s[strlen(s)-2] - 48) * 10 + s[strlen(s)-1] - 48 -1]);
	}
	
	fclose(g);
}