034 – Ziffern-Fakultäten

 

145 ist eine interessante Zahl, da 1! + 4! + 5! = 1 + 24 + 120 = 145.

Finde die Summe aller Zahlen, die gleich der Summe der Fakultäten ihrer Ziffern sind.

Hinweis: Da 1! = 1 und 2! = 2 keine Summen sind, sind sie ausgeschlossen.

Lösung

Wir berechnen die Fakultäten 1! bis 9! vor und testen dann alle Möglichkeiten.

clc
clear all
tic

fac = ones(1, 11);

for i = 3 : 11
    fac(i) = (i - 1) * fac(i - 1);
end

sum = 0;
for i = 3 : 999999
    s = num2str(i);
    k = 0;
    for j = 1 : length(s)
        k = k + fac(str2double(s(j)) + 1);
    end
    if i == k
        sum = sum + k;
    end
end

sum
toc

Ergebnis: 40730
Rechenzeit: 58 Sekunden