40 lines
998 B
Python
40 lines
998 B
Python
#!/usr/bin/env python
|
||
"""
|
||
Created on 17 Jun 2017
|
||
|
||
@author: David Doblas Jiménez
|
||
@email: daviddoji@pm.me
|
||
|
||
Solution for problem 006 of Project Euler
|
||
https://projecteuler.net/problem=6
|
||
"""
|
||
|
||
from utils import timeit
|
||
|
||
|
||
@timeit("Problem 006")
|
||
def compute():
|
||
"""
|
||
The sum of the squares of the first ten natural numbers is,
|
||
1^2 + 2^2 + ... + 10^2 = 385
|
||
|
||
The square of the sum of the first ten natural numbers is,
|
||
(1 + 2 + ... + 10)^2 = 55^2 = 3025
|
||
|
||
Hence the difference between the sum of the squares of the first ten
|
||
natural numbers and the square of the sum is 3025 − 385 = 2640.
|
||
|
||
Find the difference between the sum of the squares of the first one
|
||
hundred natural numbers and the square of the sum.
|
||
"""
|
||
|
||
n = 100
|
||
square_of_sum = sum(i for i in range(1, n + 1)) ** 2
|
||
sum_squares = sum(i**2 for i in range(1, n + 1))
|
||
diff = square_of_sum - sum_squares
|
||
return diff
|
||
|
||
|
||
if __name__ == "__main__":
|
||
print(f"Result for Problem 006: {compute()}")
|