Hello, I am doing the mcnuggets 2008 fall problem set, and am struggling as to how I would write a program to solve the equation can anyone help me?
MIT 6.00 Intro Computer Science (OCW)
Stacey Warren - Expert brainly.com
Hey! We 've verified this expert answer for you, click below to unlock the details :)
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga.
Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus.
Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
I got my questions answered at brainly.com in under 10 minutes. Go to brainly.com now for free help!
6a + 9b + 20c = n.
Show that it is possible to buy exactly 50, 51, 52, 53, 54, and 55 McNuggets, by finding solutions to the Diophantine equation. You can solve this in your head, using paper and pencil, or writing a program. However you chose to solve this problem, list the combinations of 6, 9 and 20 packs of McNuggets you need to buy in order to get each of the exact amounts.
Not the answer you are looking for? Search for more explanations.
n is the number of nuggets
a b c ?
the different combinations of packets of nuggets you can buy (packet a has 6, b has 9 c has 20)
so a b c are no of packets bought of each type?
u can find the maximum number of packets bought for each type?
say for 51 the max number of packets is 51/6
brute force method
use three for loops to the combination now that u kno the limits of every type
ok that makes sense, but how would I create a program that lists every single combination
and what was your reasoning behind wanting to figure out the maximum number of packets? it wouldnt occur to me... i was just trying to program every combination into the code
@kd1510 the reasoning behind wanting to know the maximum number of each size is so you know what numbers each of your for loops should traverse.
totals = (50, 51, 52, 53, 54, 55)
for total in totals:
# find the max a where b and c are zero
maxA = total/6
# find the max b where a and c are zero
maxB = total/9
# find the max c where a and b are zero
maxC = total/20
# preset a variable to indicate if we were able to solve
solutionPossible = False
# Loop through all possible combinations
for i in range(0, maxA):
for j in range(0, maxB):
for k in range(0, maxC):
if (i*6 + j*9 + k*20 == total):
print str(total) + " solved: a=" + str(i) +" b=" + str(j) + " c=" + str(k)
solutionPossible = True
if (solutionPossible == False):
print str(total) + " couldn't be solved"
So what you want to do (for this brute force method that is), is:
Find the maximum number of each of the packets there could possibly be (because you don't want or need to loop more than that).
Then, loop through all the possibilities. You want to check from zero (because there might have been zero of that packet) all the way up to the max, for every combination.