Solves Problem 28. Easy after all

Excellent processing time

Still have to perform some good work on prime numbers! 

Signed-off-by: Julien Lengrand-Lambert <julien@lengrand.fr>
This commit is contained in:
Julien Lengrand-Lambert
2012-02-08 22:43:23 +01:00
parent a198d3fc49
commit 581c01b9ac
2 changed files with 23 additions and 7 deletions

28
e_28.py
View File

@@ -17,14 +17,30 @@ It can be verified that the sum of the numbers on the diagonals is 101.
What is the sum of the numbers on the diagonals in a 1001 by 1001 spiral formed in the same way?
'''
def sum_power():
def sum_diag(max_lines):
"""
Finds
Returns the sum of both diagonals of the square of max_lines size
"""
dsum = 1 # sum of diagonals
cpt = 1 # number of lines processed
val = 1 # value of the current place in the square
inc = 0 # the increment between number for one line
while cpt < max_lines:
cpt += 2
inc += 2
for corner in range(4):
val += inc
dsum += val
return 1
return dsum
if __name__ == '__main__':
# The major problem in there is to find the upper limit.
print "Answer : %d " % (sum_power())
# The major problem in there is to find the logic
#n = 1 gives 1
#n = 3 gives 3, 5, 7, 9 => +2
#n = 5 gives 13, 17, 21, 25 => +4
#n = 7 gives 31, 37, 43, 49 => +6
#n = 9 gives 57, . . .
print "Answer : %d " % (sum_diag(1001))