Created
March 29, 2016 06:37
-
-
Save nickjevershed/ba5ea677dcf305aaccb4 to your computer and use it in GitHub Desktop.
Ordered version of chocolates
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from collections import Counter | |
chocTypes = ['Caramello','DairyMilk','CherryRipe','Crunchie','Flake'] | |
numberInBox = 8 | |
allOutcomes = [] | |
for pos1 in chocTypes: | |
for pos2 in chocTypes: | |
for pos3 in chocTypes: | |
for pos4 in chocTypes: | |
for pos5 in chocTypes: | |
for pos6 in chocTypes: | |
for pos7 in chocTypes: | |
for pos8 in chocTypes: | |
allOutcomes.append([pos1,pos2,pos3,pos4,pos5,pos6,pos7,pos8]) | |
# print [pos1,pos2,pos3,pos4,pos5,pos6,pos7,pos8] | |
print len(allOutcomes) | |
# for outcome in allOutcomes: | |
# print outcome | |
results = [] | |
for outcome in allOutcomes: | |
counts = Counter(outcome) | |
if 'CherryRipe' in counts: | |
if counts['CherryRipe'] == 7: | |
results.append(outcome) | |
# print results | |
print "Seven cherry ripes" | |
print len(results) | |
print len(allOutcomes) | |
print len(results)*1.0 / len(allOutcomes) * 100 | |
results = [] | |
for outcome in allOutcomes: | |
if 'Flake' not in outcome and 'Caramello' not in outcome: | |
# print outcome | |
results.append(outcome) | |
# print results | |
print "No flake or caramello" | |
print len(results) | |
print len(allOutcomes) | |
print len(results)*1.0 / len(allOutcomes) * 100 | |
results = [] | |
for outcome in allOutcomes: | |
if set(chocTypes) <= set(outcome): | |
results.append(outcome) | |
# print results | |
print "At least one" | |
print len(results) | |
print len(allOutcomes) | |
print len(results)*1.0 / len(allOutcomes) * 100 | |
results = [] | |
for outcome in allOutcomes: | |
counts = Counter(outcome) | |
if 'Crunchie' in counts: | |
if counts['Crunchie'] == 8: | |
results.append(outcome) | |
# print results | |
print "Only Crunchies" | |
print len(results) | |
print len(allOutcomes) | |
print len(results)*1.0 / len(allOutcomes) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment