Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Iterate solution in Clear category for Feed Pigeons by SamSchurter
def checkio(number):
pigeons = 1
lastAdd = 1
food = number
#as long as there is food left...
for i in range(pigeons):
if food > 0:
food -= 1
while food > 0:
#feed the current pigeons
for i in range(pigeons):
if food > 0:
food -= 1
else:
return pigeons
for x in range(lastAdd+1): #if there is food left, add as many as you can feed, up to the max add for this minute.
if food > 0:
food -= 1
pigeons += 1
else:
return pigeons
lastAdd+=1
return pigeons
if __name__ == '__main__':
#These "asserts" using only for self-checking and not necessary for auto-testing
assert checkio(1) == 1, "1st example"
assert checkio(2) == 1, "2nd example"
assert checkio(5) == 3, "3rd example"
assert checkio(10) == 6, "4th example"
Aug. 15, 2014