Advertisement
danchaofan

Euler #85

Dec 26th, 2017
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.73 KB | None | 0 0
  1. def rectangles(length, width):
  2.     combos = 0
  3.     for x in range(1, length+1):
  4.         for y in range(1, width+1):
  5.             combos += (length+1-x)*(width+1-y)
  6.     return combos
  7.  
  8. closest, bestarea = 10**10, 0
  9. for a in range(1, 2*10**3):
  10.     print(a)
  11.     for b in range(1, 10**10):
  12.         if rectangles(a, b) > 2*10**6:
  13.             upperdiff = rectangles(a, b) - 2*10**6
  14.             lowerdiff = 2*10**6 - rectangles(a, (b-1))
  15.             if (upperdiff < lowerdiff) and (upperdiff < closest):
  16.                 closest = upperdiff
  17.                 bestarea = a*b
  18.             if (lowerdiff < upperdiff) and (lowerdiff < closest):
  19.                 closest = lowerdiff
  20.                 bestarea = a*(b-1)
  21.             break
  22. print(bestarea)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement