#include <iostream> using namespace std; int main() { int sum = 0 ; int fac[10] = {1,1,2}; for(int i = 3; i<=9; i++) fac[i] = i*fac[i-1]; int num = 0; int n[5]= {0}; for(n[0] = 0 ; n[0]<10 ; n[0]++) for(n[1] = 0 ; n[1]<10 ; n[1]++) for(n[2] = 0 ; n[2]<10 ; n[2]++) for(n[3] = 0 ; n[3]<10 ; n[3]++) for(n[4]= 0 ; n[4]<10 ; n[4]++) { int pos = 0 ; while(pos <=4 && n[pos]==0) pos++; if(fac[n[0]]+fac[n[1]]+fac[n[2]]+fac[n[3]]+fac[n[4]]-pos==num) { cout << n[0] << "! + "; cout << n[1] << "! + "; cout << n[2] << "! + "; cout << n[3] << "! + "; cout << n[4] << "! = " << num<< endl; sum += num; } num++; } cout << sum-3<< endl; /*Le restamos 3 por que en el enunciado indica que no hay que sumar 1! = 1 y 2! = 2 */ return 0; }
martes, 10 de abril de 2012
Project Euler 34
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario