Cod sursa(job #865382)

Utilizator AleAnd95Musat Andreea Alexandra AleAnd95 Data 26 ianuarie 2013 13:57:40
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;
ifstream in("cifra.in");
ofstream out("cifra.out");
int u(int i, int p) {
	if (i<10)
	{if (p<=4) {int prod=1;
		for(int j=1;j<=p;j++)
			prod*=i;
		return prod%10;//pt nr<10 si putere<4 returneaza ultima cifra a lui u^i
			  }
	else { if (p%4==0) return u(i,4);//pt putere div cu 4 returneaza ult cif a lui i^4
			else return u(i,p%4);//altfel returneaza ult cifra a lui i la puterea (restul lui p la 4)
		  }
	}
	if(i>10)
	{ if (p<=4) return u(i%10,p);//daca nr>10 si puterea<4 returneaza ult cifra a ultimei cifre la puterea i
	else {if (p%4) return u(i%10, p%4);//altfel returneaza ult cifra a ultimii cifre a numarului la puterea restului lui p la 4
		else return u(i%10,4);}//
	}
}
int main () {
	int t,n;
	in>>t;
	for (int i=1;i<=t;i++)
	{ in>>n;
		int s=0;
		for (int j=1;j<=n;j++)
			s+=u(j,j);
		out<<s%10<<endl;
	}
	return 0;
}