Die folgende Gleichung lautet "1 ** 1 + 2 ** 2 + 3 ** 3 + ... + 10 ** 10 = 10405071317".
Suchen Sie nun die letzten 10 Ziffern von "1 ** 1 + 2 ** 2 + 3 ** 3 + ... + 1000 ** 1000". http://odz.sakura.ne.jp/projecteuler/index.php?cmd=read&page=Problem%2048
Beenden Sie mit Generator und Summe. Es scheint die letzten 10 Ziffern zu sein, also habe ich versucht, es auf dem Weg durch "10 ** 10" zu teilen, aber es ist ein Rätsel, wie sehr es sich ändern wird.
# coding: utf-8
def main():
MAX = 1000
DIV = 10**10
print sum((i**i) % DIV for i in range(1,MAX+1)) % DIV
main()
Recommended Posts