# looping through possible combinations of McNuggets packs of 6, 9 and 20

Baba raoulbia at gmail.com
Sun Aug 15 17:44:15 CEST 2010

```Hi John,

Thanks for your submission! I've improved a lot and everone's help so
far has been thrilling and is very good for my self-study
motivation :)

ok so i think i'm clear on how to approach this problem and on how to
write basic but clean Python code to solve it.

The next step is to generalise this code so that other pack quantities
could be tested: "generalize this idea to work with any size packages
of McNuggets, not just 6, 9, and 20. For simplicity, however, we will
assume that nuggets are provided in three different sized packages"

I thought this should be relatively straightforward and it does work
if i test it for the values 6,9&20 but if i test for 2,3,4 i would
expect the result to be 1 but it returns nothing

for a in range (0,n_nuggets/6+1):
for b in range (0,n_nuggets/9+1):
for c in range (0,n_nuggets/20+1):
#print "trying for %d: %d %d %d" % (n_nuggets,a,b,c)
if packages[0]*a+packages[1]*b
+packages[2]*c==n_nuggets:
return True
return False

def diophantine_nuggets(x,y,z):
packages =[x,y,z]
for n_nuggets in range(50):
if result:
cbc+=1
else:
cbc=0
if cbc==6:
solution=n_nuggets-6
print "Largest number of McNuggets that cannot be bought in
exact quantity: %d" %(solution)

diophantine_nuggets(2,3,4)

```