From 05e09308223505ea2eecc7691c98cb5c83a070bf Mon Sep 17 00:00:00 2001 From: Xiretza Date: Mon, 7 Dec 2020 07:15:44 +0100 Subject: [PATCH] 2020 day7/python: add solution --- 2020/README.md | 1 + 2020/data/day7.expected | 2 + 2020/data/day7.input | 594 ++++++++++++++++++++++++++++++++++++++++ 2020/day7/day7.py | 50 ++++ 4 files changed, 647 insertions(+) create mode 100644 2020/data/day7.expected create mode 100644 2020/data/day7.input create mode 100644 2020/day7/day7.py diff --git a/2020/README.md b/2020/README.md index 1df80fd..2052fd3 100644 --- a/2020/README.md +++ b/2020/README.md @@ -12,5 +12,6 @@ https://adventofcode.com/2020/ | 4 | `**` | `**` | | | 5 | | `**` | | | 6 | | `**` | | +| 6 | `**` | | | `test.sh` can be used to run all solutions and automatically compares them to (my) puzzle inputs and the expected outputs. diff --git a/2020/data/day7.expected b/2020/data/day7.expected new file mode 100644 index 0000000..6ab53cf --- /dev/null +++ b/2020/data/day7.expected @@ -0,0 +1,2 @@ +222 +13264 diff --git a/2020/data/day7.input b/2020/data/day7.input new file mode 100644 index 0000000..2192394 --- /dev/null +++ b/2020/data/day7.input @@ -0,0 +1,594 @@ +wavy turquoise bags contain no other bags. +vibrant beige bags contain 4 drab lime bags, 1 muted violet bag, 5 drab plum bags, 5 shiny silver bags. +plaid green bags contain 2 pale olive bags, 1 dark chartreuse bag, 1 vibrant olive bag, 1 pale bronze bag. +plaid fuchsia bags contain 5 dull teal bags, 4 dark beige bags, 4 shiny teal bags, 5 vibrant orange bags. +vibrant coral bags contain 1 dotted blue bag. +drab tan bags contain 5 drab maroon bags, 5 bright silver bags, 2 dim tan bags. +light gray bags contain 3 dotted crimson bags, 3 dull chartreuse bags, 1 light maroon bag. +mirrored tomato bags contain 5 clear orange bags, 2 striped violet bags. +pale brown bags contain 1 faded fuchsia bag, 2 wavy orange bags, 1 mirrored coral bag, 5 dotted brown bags. +muted maroon bags contain 5 drab gold bags, 2 vibrant aqua bags, 5 bright crimson bags. +light purple bags contain 4 dim teal bags, 3 vibrant bronze bags, 2 dark chartreuse bags, 1 shiny green bag. +muted white bags contain 3 wavy lime bags, 5 muted lavender bags, 1 pale salmon bag, 1 dotted red bag. +plaid yellow bags contain 2 plaid gold bags, 2 faded lavender bags, 2 faded fuchsia bags, 3 faded gold bags. +plaid white bags contain 1 dull cyan bag, 4 pale cyan bags, 1 clear red bag, 5 vibrant orange bags. +wavy teal bags contain 5 wavy violet bags, 5 shiny silver bags. +pale crimson bags contain 1 wavy white bag, 5 clear tomato bags, 2 dark plum bags, 3 bright turquoise bags. +posh green bags contain 2 muted black bags, 3 light magenta bags. +striped maroon bags contain 1 bright green bag, 4 dark coral bags. +pale red bags contain 5 faded turquoise bags, 4 plaid crimson bags, 5 dark aqua bags. +vibrant chartreuse bags contain 2 pale red bags. +faded fuchsia bags contain no other bags. +pale olive bags contain 3 striped blue bags, 5 faded magenta bags, 3 light white bags. +striped tomato bags contain 4 faded plum bags. +shiny cyan bags contain 1 clear tomato bag, 4 clear magenta bags, 3 plaid teal bags, 5 dotted indigo bags. +plaid silver bags contain 3 dotted beige bags. +posh teal bags contain 3 faded black bags, 2 vibrant lavender bags, 5 light lavender bags, 5 faded lime bags. +clear gray bags contain 5 pale black bags, 2 dull salmon bags. +bright white bags contain 2 shiny olive bags, 5 dim brown bags, 1 dull crimson bag. +striped gold bags contain 3 mirrored yellow bags, 1 posh brown bag, 5 clear cyan bags, 3 striped tan bags. +light black bags contain 2 light lavender bags, 2 dotted bronze bags. +vibrant orange bags contain 3 posh plum bags, 5 light tan bags, 5 dim gold bags, 4 vibrant aqua bags. +dark chartreuse bags contain 3 striped purple bags, 2 dull beige bags, 5 wavy brown bags. +mirrored magenta bags contain 4 drab purple bags, 4 dotted brown bags, 2 light fuchsia bags. +striped magenta bags contain 1 drab gray bag, 1 wavy yellow bag, 5 drab plum bags. +dotted teal bags contain 4 pale indigo bags. +plaid red bags contain 4 clear fuchsia bags, 2 vibrant brown bags. +dotted green bags contain 2 striped teal bags, 3 muted bronze bags, 4 light red bags. +vibrant purple bags contain 2 drab plum bags, 4 dim beige bags, 4 drab aqua bags. +light indigo bags contain 1 dotted plum bag. +wavy green bags contain 1 shiny aqua bag, 2 dark lavender bags. +faded gray bags contain 2 plaid green bags. +dull purple bags contain 4 dull salmon bags, 1 plaid chartreuse bag, 1 dull tan bag, 4 pale green bags. +posh yellow bags contain 2 dim teal bags. +pale orange bags contain 4 mirrored red bags, 2 dotted chartreuse bags, 2 light yellow bags, 3 posh red bags. +dark tomato bags contain 1 light magenta bag, 4 light black bags, 2 vibrant aqua bags. +light cyan bags contain 1 shiny red bag, 2 plaid green bags, 4 clear cyan bags, 5 wavy tomato bags. +pale lavender bags contain 2 pale gray bags, 3 dotted violet bags, 2 striped lavender bags, 5 drab magenta bags. +dim coral bags contain 4 bright black bags, 1 shiny tan bag, 1 faded chartreuse bag, 1 bright silver bag. +muted purple bags contain 2 wavy yellow bags. +pale chartreuse bags contain 3 dotted red bags, 4 striped salmon bags, 4 pale brown bags, 2 dull yellow bags. +light red bags contain 3 bright crimson bags. +bright green bags contain 2 plaid fuchsia bags, 5 light lavender bags, 3 dotted cyan bags. +plaid purple bags contain 4 wavy tan bags, 5 plaid teal bags, 5 dull teal bags, 1 shiny gold bag. +vibrant gray bags contain 1 dull beige bag. +dotted orange bags contain 2 light green bags, 5 dotted brown bags, 4 pale blue bags. +dull black bags contain 5 pale silver bags, 4 pale lavender bags. +dull blue bags contain 1 striped turquoise bag, 2 dotted red bags, 5 dark white bags. +clear turquoise bags contain 3 dim beige bags, 5 faded brown bags. +pale magenta bags contain 1 dark violet bag, 1 dark yellow bag, 2 wavy aqua bags, 5 light silver bags. +bright teal bags contain 1 dark beige bag, 1 pale gold bag, 1 dim magenta bag. +pale plum bags contain 3 vibrant yellow bags, 1 dotted beige bag. +dull lime bags contain 1 faded coral bag, 4 plaid gold bags, 3 drab white bags. +vibrant olive bags contain 1 plaid teal bag, 1 faded tan bag. +muted magenta bags contain 5 clear gold bags. +dull olive bags contain 4 clear cyan bags, 1 dotted tan bag. +dim orange bags contain 3 drab lime bags, 1 drab plum bag, 2 vibrant tomato bags, 1 plaid blue bag. +wavy crimson bags contain 2 plaid gold bags, 3 light olive bags, 4 vibrant fuchsia bags. +clear tan bags contain 3 dotted beige bags, 2 dark purple bags. +plaid bronze bags contain 1 mirrored violet bag. +muted brown bags contain 4 dotted indigo bags, 5 dull crimson bags. +dull fuchsia bags contain 2 dotted gold bags, 2 striped violet bags, 1 clear lime bag, 3 shiny fuchsia bags. +mirrored gold bags contain 2 mirrored purple bags, 4 plaid aqua bags. +vibrant turquoise bags contain 1 light maroon bag, 3 dim teal bags, 1 dull brown bag. +shiny green bags contain 2 plaid orange bags. +dark crimson bags contain 1 striped purple bag, 4 vibrant salmon bags. +bright gray bags contain 4 plaid blue bags, 1 faded lime bag, 4 pale salmon bags, 3 bright bronze bags. +wavy salmon bags contain 1 wavy coral bag, 3 bright blue bags. +faded blue bags contain 3 muted fuchsia bags, 1 plaid lavender bag, 3 posh brown bags. +posh tomato bags contain 4 dim gold bags, 2 shiny gold bags. +striped yellow bags contain 3 vibrant turquoise bags, 3 dim salmon bags, 4 vibrant yellow bags, 2 faded beige bags. +light beige bags contain 5 striped purple bags, 3 muted gold bags. +wavy indigo bags contain 1 muted chartreuse bag, 2 wavy purple bags, 2 mirrored coral bags, 4 muted teal bags. +striped tan bags contain 4 light fuchsia bags, 2 dim chartreuse bags, 3 vibrant black bags, 1 muted black bag. +pale fuchsia bags contain 5 vibrant aqua bags, 5 drab purple bags, 5 shiny olive bags, 5 drab indigo bags. +pale cyan bags contain 5 dull teal bags. +dull chartreuse bags contain 5 wavy brown bags. +bright coral bags contain 3 clear orange bags, 3 shiny brown bags, 4 pale teal bags. +light magenta bags contain 3 light white bags, 1 clear indigo bag, 3 vibrant salmon bags, 3 dark crimson bags. +dull bronze bags contain 5 dotted gold bags, 4 dark olive bags, 3 vibrant magenta bags. +light lime bags contain 4 vibrant cyan bags. +muted aqua bags contain 3 dotted red bags, 2 wavy blue bags, 3 vibrant orange bags. +light violet bags contain 3 light green bags. +dotted red bags contain 1 muted teal bag, 4 striped tan bags, 3 wavy teal bags. +pale purple bags contain 4 dotted cyan bags, 1 dim magenta bag. +dim beige bags contain 5 dotted yellow bags, 4 faded magenta bags, 1 muted beige bag, 2 pale bronze bags. +light bronze bags contain 5 faded bronze bags, 2 drab bronze bags, 5 dark gold bags, 2 light purple bags. +wavy violet bags contain 5 light white bags, 3 light tan bags. +vibrant aqua bags contain 3 wavy turquoise bags, 4 dull beige bags. +pale bronze bags contain 5 light lavender bags, 4 dull beige bags, 3 bright crimson bags. +bright salmon bags contain 5 mirrored bronze bags, 5 dull orange bags, 2 shiny salmon bags. +muted blue bags contain 3 shiny yellow bags, 5 light yellow bags, 5 vibrant gold bags, 2 dotted coral bags. +dotted silver bags contain 1 plaid fuchsia bag, 5 light beige bags, 4 drab lime bags. +mirrored black bags contain 2 dull salmon bags. +bright black bags contain 4 faded magenta bags. +bright beige bags contain 2 mirrored salmon bags. +bright indigo bags contain 4 clear brown bags, 3 bright green bags. +mirrored lavender bags contain 3 shiny tan bags, 4 dark purple bags, 2 striped tan bags. +light aqua bags contain 2 light magenta bags, 5 vibrant tan bags, 5 drab plum bags, 1 plaid tomato bag. +mirrored maroon bags contain 4 vibrant tomato bags. +posh turquoise bags contain 1 striped white bag, 3 dim lavender bags, 3 posh teal bags, 2 mirrored salmon bags. +shiny gray bags contain 1 vibrant beige bag, 3 light tan bags, 4 wavy teal bags. +wavy black bags contain 4 dark tomato bags, 3 dim gold bags, 4 dark beige bags. +drab silver bags contain 2 light green bags, 3 light gold bags, 4 drab plum bags, 1 dotted yellow bag. +pale violet bags contain 1 dull beige bag, 2 shiny teal bags, 1 light lavender bag, 3 mirrored red bags. +dark blue bags contain 1 dotted indigo bag, 1 clear tomato bag. +dull teal bags contain 5 vibrant salmon bags, 3 vibrant aqua bags, 5 wavy tan bags, 5 striped purple bags. +faded tomato bags contain 2 shiny chartreuse bags, 4 clear orange bags, 5 bright orange bags. +mirrored red bags contain 5 muted beige bags, 2 faded white bags. +mirrored lime bags contain 4 posh crimson bags, 5 pale turquoise bags, 3 wavy blue bags. +mirrored crimson bags contain 1 faded white bag, 2 dark crimson bags, 3 striped cyan bags. +light teal bags contain 3 clear indigo bags, 1 wavy tan bag, 4 dim gold bags. +wavy chartreuse bags contain 5 wavy plum bags, 2 shiny salmon bags, 3 clear olive bags. +shiny black bags contain 2 drab aqua bags, 4 dull brown bags, 5 wavy silver bags, 1 vibrant brown bag. +bright violet bags contain 2 striped magenta bags, 4 vibrant gray bags. +muted tomato bags contain 1 drab turquoise bag. +muted teal bags contain 3 dotted blue bags. +dim cyan bags contain 3 dotted blue bags, 1 vibrant coral bag. +striped fuchsia bags contain 1 shiny gold bag, 5 dark beige bags, 5 mirrored indigo bags. +clear bronze bags contain 3 striped orange bags, 2 vibrant tomato bags. +vibrant lavender bags contain 2 muted beige bags, 4 shiny teal bags, 4 dull beige bags. +light olive bags contain 5 shiny yellow bags, 1 vibrant cyan bag. +shiny fuchsia bags contain 4 dim brown bags, 2 dull chartreuse bags. +plaid turquoise bags contain 3 bright green bags, 4 light fuchsia bags, 2 light lavender bags. +shiny brown bags contain 5 mirrored plum bags. +pale white bags contain 4 dull magenta bags, 1 posh purple bag, 4 pale olive bags, 4 wavy olive bags. +pale yellow bags contain 1 bright blue bag. +dark salmon bags contain 3 wavy turquoise bags, 1 dotted plum bag, 3 faded white bags, 5 dim tan bags. +shiny crimson bags contain 5 faded coral bags. +pale green bags contain 2 posh beige bags, 5 dark silver bags. +dim gray bags contain 4 dull cyan bags, 2 muted salmon bags, 4 mirrored tan bags, 1 bright violet bag. +dim blue bags contain 4 light orange bags, 4 wavy beige bags. +mirrored cyan bags contain 3 pale cyan bags. +dark aqua bags contain 2 striped blue bags, 5 light white bags, 4 drab gray bags. +wavy tan bags contain no other bags. +light tan bags contain 1 clear aqua bag. +light silver bags contain 1 light green bag, 2 pale bronze bags, 1 bright crimson bag, 1 vibrant aqua bag. +plaid tan bags contain 5 posh silver bags, 1 shiny beige bag. +shiny white bags contain 1 pale olive bag. +dotted brown bags contain 1 bright silver bag, 5 light tan bags, 4 light coral bags. +shiny bronze bags contain 2 vibrant plum bags, 2 wavy teal bags, 1 bright red bag, 5 clear tomato bags. +striped violet bags contain 5 vibrant gray bags, 3 dark maroon bags, 4 dotted fuchsia bags, 4 plaid purple bags. +dull plum bags contain 4 dark gray bags, 1 wavy aqua bag, 2 muted aqua bags, 5 striped crimson bags. +posh blue bags contain 1 dotted bronze bag, 5 muted indigo bags, 2 light tan bags. +posh tan bags contain 4 shiny gold bags, 3 drab maroon bags. +striped aqua bags contain 4 muted bronze bags, 5 bright blue bags, 1 wavy tan bag. +shiny silver bags contain 1 light green bag. +dark white bags contain 4 drab purple bags. +dull green bags contain 5 wavy bronze bags, 5 faded white bags. +clear chartreuse bags contain 3 dark gray bags. +posh coral bags contain 2 shiny lime bags, 4 light blue bags, 3 muted bronze bags. +faded magenta bags contain 1 dull maroon bag, 4 shiny teal bags, 1 plaid teal bag. +drab brown bags contain 1 drab violet bag. +pale salmon bags contain 4 plaid gray bags, 2 wavy violet bags. +mirrored aqua bags contain 1 faded turquoise bag, 5 dull aqua bags. +striped gray bags contain 5 dark maroon bags, 3 shiny plum bags. +mirrored salmon bags contain 4 clear cyan bags, 2 vibrant olive bags, 2 striped silver bags, 3 muted lavender bags. +wavy purple bags contain 1 shiny beige bag. +plaid indigo bags contain 1 plaid plum bag. +plaid gray bags contain 5 pale blue bags, 3 shiny gold bags. +bright yellow bags contain 2 drab bronze bags, 3 drab teal bags. +drab red bags contain 4 drab indigo bags, 1 mirrored blue bag, 2 dull aqua bags, 4 light magenta bags. +dull white bags contain 2 muted black bags, 1 dim beige bag, 1 dark beige bag. +clear silver bags contain 5 muted bronze bags, 1 muted tan bag, 3 light aqua bags, 1 wavy fuchsia bag. +dark black bags contain 2 pale fuchsia bags, 5 pale brown bags, 5 drab black bags. +mirrored silver bags contain 4 drab plum bags, 3 shiny white bags, 5 muted crimson bags, 5 dull aqua bags. +dim tomato bags contain 3 drab red bags, 1 drab lime bag, 4 striped gray bags. +faded bronze bags contain 5 clear indigo bags, 2 dotted blue bags. +striped crimson bags contain 1 plaid tomato bag, 2 dull yellow bags, 3 plaid purple bags. +wavy olive bags contain 4 mirrored red bags, 4 drab indigo bags. +dotted turquoise bags contain 2 mirrored lavender bags, 4 light maroon bags, 2 pale teal bags, 1 mirrored crimson bag. +muted violet bags contain 5 shiny olive bags. +bright orange bags contain 4 pale tan bags, 1 striped fuchsia bag, 5 shiny olive bags. +striped turquoise bags contain 1 posh salmon bag, 5 shiny indigo bags, 4 wavy violet bags. +dull indigo bags contain 3 plaid plum bags, 4 faded plum bags, 3 dull violet bags. +posh black bags contain 4 clear brown bags, 4 vibrant cyan bags, 1 light white bag. +shiny orange bags contain 5 striped purple bags, 3 muted beige bags. +striped plum bags contain 5 dull salmon bags, 3 dull orange bags, 1 clear lime bag, 3 mirrored indigo bags. +clear white bags contain 4 wavy crimson bags, 3 plaid magenta bags. +pale tan bags contain 5 muted indigo bags. +dark red bags contain 3 bright magenta bags, 1 muted salmon bag, 4 vibrant gray bags, 5 clear green bags. +dark yellow bags contain 3 dim teal bags. +clear aqua bags contain no other bags. +vibrant white bags contain 2 drab yellow bags, 4 vibrant aqua bags, 2 plaid maroon bags. +posh lime bags contain 5 vibrant black bags. +clear teal bags contain 1 shiny olive bag, 5 bright aqua bags, 4 bright violet bags. +dotted indigo bags contain 2 muted fuchsia bags, 3 mirrored gray bags. +posh olive bags contain 5 clear maroon bags, 2 dim teal bags, 2 drab plum bags, 4 shiny olive bags. +dark coral bags contain 4 clear red bags. +dark olive bags contain 4 vibrant black bags. +faded olive bags contain 2 bright gray bags, 5 dull white bags. +dotted purple bags contain 1 faded brown bag, 5 dark purple bags. +faded plum bags contain 2 pale brown bags, 4 dark aqua bags. +bright plum bags contain 2 vibrant brown bags, 1 bright black bag, 1 dotted gold bag. +faded lavender bags contain 4 clear violet bags, 4 striped purple bags. +faded silver bags contain 4 dotted blue bags, 2 light purple bags, 1 bright chartreuse bag, 3 striped white bags. +bright cyan bags contain 5 dotted lime bags, 5 shiny gray bags, 1 faded orange bag, 5 clear indigo bags. +plaid tomato bags contain 1 clear violet bag, 3 muted beige bags. +wavy aqua bags contain 1 light tan bag. +dotted gold bags contain 5 mirrored indigo bags, 5 dull tan bags. +faded teal bags contain 5 plaid black bags, 2 clear turquoise bags. +striped white bags contain 2 dull aqua bags, 1 mirrored violet bag, 4 vibrant salmon bags. +mirrored violet bags contain 2 vibrant salmon bags, 1 clear brown bag. +drab magenta bags contain 3 muted lime bags, 2 bright orange bags. +pale teal bags contain 3 light black bags, 4 dim black bags, 2 muted gray bags. +dark teal bags contain 5 dark tomato bags, 4 dull teal bags, 5 striped white bags, 5 plaid aqua bags. +dim purple bags contain 5 wavy magenta bags, 2 muted fuchsia bags, 5 mirrored bronze bags. +clear violet bags contain 5 wavy turquoise bags, 5 light black bags, 1 mirrored indigo bag, 2 faded white bags. +dim indigo bags contain 3 dull teal bags. +dotted olive bags contain 4 dark red bags, 2 mirrored beige bags. +posh aqua bags contain 1 posh blue bag, 4 dotted black bags, 4 pale tomato bags. +clear orange bags contain 1 striped magenta bag, 3 wavy aqua bags. +plaid cyan bags contain 5 vibrant lavender bags, 2 light gold bags, 2 wavy orange bags, 4 bright turquoise bags. +mirrored green bags contain 4 plaid fuchsia bags. +dark silver bags contain 3 light coral bags. +wavy silver bags contain 5 plaid yellow bags, 5 pale orange bags. +plaid crimson bags contain 4 vibrant salmon bags, 4 vibrant blue bags, 1 light teal bag, 3 bright crimson bags. +mirrored bronze bags contain 1 dark coral bag, 2 clear orange bags, 4 plaid orange bags, 2 vibrant gray bags. +faded aqua bags contain 5 light white bags, 3 drab gray bags, 1 plaid beige bag. +drab yellow bags contain 1 dotted black bag, 2 dim silver bags. +dark beige bags contain 4 wavy tan bags, 5 light lavender bags, 5 dotted bronze bags. +clear green bags contain 5 shiny purple bags, 5 light teal bags, 5 pale bronze bags. +dotted lavender bags contain 4 wavy orange bags, 4 dull chartreuse bags. +bright chartreuse bags contain 2 dotted cyan bags, 3 pale olive bags, 4 vibrant salmon bags. +faded red bags contain 3 dull cyan bags, 3 drab indigo bags, 5 light green bags, 4 dark lime bags. +plaid brown bags contain 2 dotted salmon bags, 3 striped silver bags, 1 light blue bag. +dull beige bags contain no other bags. +dim violet bags contain 3 striped lavender bags, 5 dotted coral bags, 1 clear blue bag. +vibrant red bags contain 1 dark coral bag, 3 light gold bags. +faded violet bags contain 3 pale gold bags. +muted salmon bags contain 3 wavy turquoise bags. +vibrant gold bags contain 2 shiny teal bags. +dull coral bags contain 3 posh gold bags, 4 wavy olive bags. +mirrored fuchsia bags contain 5 wavy lime bags. +dotted plum bags contain 3 bright bronze bags, 3 light coral bags, 5 mirrored orange bags, 4 plaid gray bags. +dim fuchsia bags contain 4 light indigo bags, 5 faded red bags, 5 plaid orange bags. +dull brown bags contain 2 dim gold bags. +faded indigo bags contain 3 wavy olive bags, 1 shiny green bag. +pale coral bags contain 5 faded crimson bags. +light orange bags contain 3 bright gold bags, 1 striped magenta bag, 4 plaid lavender bags, 5 light green bags. +clear salmon bags contain 3 dim tan bags, 1 light lavender bag. +vibrant indigo bags contain 1 dark beige bag, 2 posh purple bags. +clear cyan bags contain 5 posh brown bags. +dull red bags contain 3 drab gold bags, 3 dark aqua bags, 5 dim maroon bags. +dim red bags contain 5 faded black bags, 2 shiny lime bags. +dark indigo bags contain 5 dull green bags, 2 striped white bags, 3 dotted indigo bags. +pale tomato bags contain 4 vibrant gold bags. +dim turquoise bags contain 4 plaid tomato bags, 2 plaid gray bags, 4 shiny violet bags. +dotted yellow bags contain 5 dotted plum bags, 3 muted beige bags, 4 light fuchsia bags, 1 wavy olive bag. +dim gold bags contain 3 muted beige bags. +mirrored orange bags contain 5 drab maroon bags, 4 dull teal bags, 1 faded tan bag, 2 dark aqua bags. +light chartreuse bags contain 4 vibrant gold bags, 5 dark silver bags, 3 pale purple bags. +posh silver bags contain 5 dotted silver bags, 4 dark chartreuse bags, 1 striped magenta bag. +vibrant black bags contain 5 muted red bags, 1 pale purple bag, 2 clear indigo bags, 4 faded magenta bags. +faded maroon bags contain 2 clear cyan bags, 4 wavy orange bags, 2 shiny blue bags. +bright lavender bags contain 5 dull chartreuse bags. +drab black bags contain 1 posh plum bag, 5 mirrored maroon bags, 3 dark yellow bags. +drab gray bags contain 4 clear violet bags, 3 mirrored red bags, 1 light silver bag, 1 wavy turquoise bag. +faded turquoise bags contain 2 light tan bags, 5 faded coral bags. +dark purple bags contain 5 pale cyan bags. +muted beige bags contain no other bags. +dull maroon bags contain 2 wavy turquoise bags, 5 light lavender bags, 5 muted beige bags. +bright tomato bags contain 3 plaid blue bags. +dim crimson bags contain 3 drab turquoise bags, 2 faded crimson bags, 2 plaid chartreuse bags. +clear magenta bags contain 3 light green bags, 5 dotted red bags, 1 mirrored indigo bag, 1 dim brown bag. +dotted aqua bags contain 5 clear crimson bags, 1 wavy orange bag. +dark fuchsia bags contain 1 dull maroon bag. +faded salmon bags contain 2 wavy yellow bags, 3 faded plum bags. +muted chartreuse bags contain 5 light gold bags, 1 bright bronze bag, 5 light beige bags, 4 light black bags. +muted lavender bags contain 3 mirrored coral bags. +drab fuchsia bags contain 3 plaid brown bags. +dim plum bags contain 4 vibrant brown bags, 3 plaid beige bags, 3 dark crimson bags, 4 bright teal bags. +shiny magenta bags contain 1 muted black bag. +wavy magenta bags contain 2 faded lavender bags, 1 bright gray bag, 3 pale olive bags. +mirrored plum bags contain 5 muted maroon bags. +wavy plum bags contain 5 dark crimson bags. +striped lavender bags contain 4 vibrant yellow bags, 2 vibrant lavender bags. +faded beige bags contain 4 pale indigo bags, 5 vibrant tomato bags. +shiny gold bags contain 4 drab gray bags, 4 light coral bags. +dotted beige bags contain 5 drab maroon bags, 1 shiny gold bag, 3 light lavender bags. +dull yellow bags contain 3 pale bronze bags, 1 bright silver bag. +muted green bags contain 3 faded red bags, 2 plaid green bags, 3 plaid black bags, 1 light yellow bag. +vibrant silver bags contain 5 striped purple bags, 3 shiny olive bags, 4 vibrant lavender bags. +dim green bags contain 4 vibrant gold bags, 5 muted maroon bags, 1 plaid aqua bag, 2 posh silver bags. +faded lime bags contain 2 shiny white bags. +bright bronze bags contain 5 muted gold bags, 3 light black bags. +shiny yellow bags contain 5 light green bags, 5 wavy brown bags. +dark cyan bags contain 5 light teal bags, 1 posh yellow bag, 3 shiny aqua bags. +striped blue bags contain 1 muted gold bag, 4 dull maroon bags, 3 clear red bags, 5 faded fuchsia bags. +dim tan bags contain 1 bright tan bag. +shiny red bags contain 3 plaid turquoise bags, 1 dotted cyan bag, 1 pale fuchsia bag. +vibrant brown bags contain 5 dim magenta bags, 4 drab white bags. +dull turquoise bags contain 2 bright orange bags, 4 bright gray bags, 3 dim chartreuse bags. +dark bronze bags contain 3 striped green bags, 2 wavy tan bags, 2 faded lime bags, 3 bright olive bags. +striped green bags contain 4 light black bags, 2 drab bronze bags, 4 dotted bronze bags, 3 plaid orange bags. +dark brown bags contain 5 drab indigo bags, 3 plaid white bags, 1 pale lime bag. +dotted black bags contain 4 dull beige bags, 4 drab lavender bags. +striped cyan bags contain 2 vibrant orange bags, 3 clear violet bags, 2 mirrored gray bags. +clear tomato bags contain 5 shiny gold bags, 1 dim chartreuse bag, 4 dark crimson bags, 5 shiny white bags. +light white bags contain 3 pale violet bags, 4 drab plum bags, 4 drab gray bags, 1 vibrant lavender bag. +plaid black bags contain 4 vibrant orange bags, 5 bright gray bags. +drab salmon bags contain 4 faded coral bags. +shiny maroon bags contain 3 pale black bags, 2 bright magenta bags. +striped black bags contain 1 plaid fuchsia bag, 4 plaid black bags, 1 mirrored beige bag. +muted bronze bags contain 5 faded red bags, 5 plaid green bags. +bright tan bags contain 1 wavy yellow bag, 5 light fuchsia bags, 5 plaid teal bags. +plaid gold bags contain 5 faded black bags, 1 vibrant black bag. +wavy tomato bags contain 5 plaid fuchsia bags, 2 mirrored violet bags, 3 dark yellow bags, 1 bright gold bag. +faded tan bags contain 5 vibrant salmon bags, 5 plaid teal bags, 4 clear aqua bags, 2 pale violet bags. +light crimson bags contain 3 mirrored tomato bags, 5 plaid green bags. +wavy bronze bags contain 1 light teal bag. +faded yellow bags contain 3 clear beige bags, 4 bright bronze bags. +muted gold bags contain 5 plaid teal bags, 2 faded fuchsia bags, 4 bright crimson bags. +shiny tan bags contain 5 dark salmon bags, 5 light red bags. +bright gold bags contain 2 faded chartreuse bags, 2 dim green bags, 3 striped cyan bags. +pale turquoise bags contain 1 pale tan bag, 5 dark violet bags. +wavy orange bags contain 5 plaid teal bags, 1 pale bronze bag, 4 wavy tan bags, 1 clear red bag. +dim silver bags contain 3 dark lime bags, 1 dotted beige bag. +faded cyan bags contain 2 dull maroon bags, 5 clear tan bags, 1 dull coral bag, 2 posh lavender bags. +dim white bags contain 1 dull maroon bag, 3 dull brown bags. +vibrant bronze bags contain 5 faded chartreuse bags. +dotted fuchsia bags contain 4 vibrant salmon bags, 2 faded white bags. +faded gold bags contain 2 dark maroon bags, 2 bright chartreuse bags, 1 dull brown bag. +dim brown bags contain 3 dull yellow bags, 4 faded chartreuse bags, 5 vibrant silver bags. +light yellow bags contain 2 striped silver bags. +striped coral bags contain 1 muted blue bag, 1 dim aqua bag, 4 posh red bags, 5 plaid lime bags. +dark magenta bags contain 2 pale violet bags, 2 vibrant tomato bags, 5 clear orange bags. +posh indigo bags contain 2 clear red bags, 4 clear violet bags, 2 shiny chartreuse bags, 5 dull white bags. +light tomato bags contain 4 clear indigo bags. +light plum bags contain 2 mirrored maroon bags. +drab violet bags contain 5 dark aqua bags, 1 vibrant magenta bag. +pale gray bags contain 1 striped lime bag, 4 clear bronze bags. +dark plum bags contain 2 dark olive bags. +plaid lavender bags contain 4 pale brown bags. +mirrored olive bags contain 1 faded coral bag. +drab green bags contain 2 dull silver bags, 2 clear purple bags, 3 posh violet bags, 2 light blue bags. +bright maroon bags contain 4 faded yellow bags, 4 dotted bronze bags, 2 dark brown bags. +striped purple bags contain 2 faded fuchsia bags, 5 posh plum bags. +wavy gray bags contain 4 dark violet bags, 4 plaid orange bags. +drab plum bags contain 3 light lavender bags, 1 striped blue bag, 5 bright crimson bags. +faded orange bags contain 4 light teal bags, 4 dim chartreuse bags, 2 vibrant yellow bags. +dim salmon bags contain 2 pale coral bags, 1 drab aqua bag. +muted silver bags contain 1 clear chartreuse bag, 2 clear tan bags, 5 dotted tan bags, 4 clear black bags. +muted yellow bags contain 3 wavy blue bags, 1 striped lavender bag. +wavy gold bags contain 5 faded gold bags, 1 shiny green bag, 1 mirrored cyan bag. +dull gold bags contain 1 striped green bag. +bright brown bags contain 4 drab plum bags, 4 pale violet bags, 5 vibrant blue bags. +bright crimson bags contain 2 wavy tan bags, 4 shiny teal bags. +mirrored gray bags contain 2 dull beige bags, 4 light white bags, 5 pale brown bags. +dull tan bags contain 4 dim magenta bags, 1 light teal bag. +mirrored yellow bags contain 1 drab lavender bag, 4 shiny gold bags, 3 drab turquoise bags, 2 light silver bags. +muted indigo bags contain 5 mirrored coral bags, 3 dark crimson bags. +dull aqua bags contain 4 drab lime bags, 3 shiny crimson bags, 1 drab salmon bag. +dim aqua bags contain 2 shiny lavender bags, 5 pale coral bags. +shiny chartreuse bags contain 1 clear maroon bag, 4 shiny blue bags. +dotted magenta bags contain 3 light olive bags. +faded green bags contain 4 faded beige bags, 5 dotted gold bags, 5 striped lavender bags, 5 wavy blue bags. +drab orange bags contain 3 muted fuchsia bags. +dim magenta bags contain 1 shiny orange bag. +shiny olive bags contain 2 wavy aqua bags. +dark orange bags contain 1 clear black bag, 1 faded gray bag. +light lavender bags contain no other bags. +bright turquoise bags contain 2 dull beige bags, 5 shiny teal bags, 5 posh brown bags, 5 dark beige bags. +faded purple bags contain 2 dark white bags, 2 pale salmon bags. +drab olive bags contain 1 dark silver bag, 4 plaid yellow bags, 3 drab gold bags, 2 mirrored yellow bags. +dull gray bags contain 3 vibrant turquoise bags, 5 faded chartreuse bags. +striped bronze bags contain 3 faded turquoise bags, 2 vibrant gray bags, 3 dotted beige bags, 3 dull beige bags. +wavy fuchsia bags contain 2 shiny purple bags, 2 plaid crimson bags, 1 dark cyan bag. +pale aqua bags contain 4 dotted tan bags, 1 dim yellow bag, 5 shiny lime bags. +pale silver bags contain 2 shiny brown bags. +shiny aqua bags contain 1 pale salmon bag, 5 faded chartreuse bags, 1 plaid aqua bag, 4 shiny silver bags. +posh brown bags contain 5 vibrant orange bags, 4 bright silver bags, 5 wavy orange bags, 3 dim chartreuse bags. +striped lime bags contain 5 drab violet bags, 4 light turquoise bags, 2 bright turquoise bags. +muted tan bags contain 2 striped purple bags, 4 posh yellow bags. +drab purple bags contain 2 clear red bags. +plaid magenta bags contain 2 pale blue bags, 5 plaid crimson bags. +mirrored tan bags contain 3 pale purple bags. +light blue bags contain 4 light tan bags. +clear black bags contain 2 pale blue bags, 4 dim gold bags, 2 vibrant gold bags. +light gold bags contain 1 wavy turquoise bag, 3 drab plum bags, 1 clear violet bag. +bright olive bags contain 3 light lavender bags, 1 faded tan bag, 3 shiny gold bags, 1 dotted cyan bag. +dark maroon bags contain 4 muted gold bags, 2 shiny yellow bags. +wavy lime bags contain 3 plaid green bags, 5 mirrored silver bags, 4 mirrored green bags, 3 dotted beige bags. +drab white bags contain 3 clear red bags, 3 bright silver bags, 4 posh red bags, 2 shiny blue bags. +clear lime bags contain 4 dotted orange bags. +vibrant maroon bags contain 2 dull orange bags, 5 vibrant crimson bags. +pale black bags contain 1 pale cyan bag, 5 dim tan bags, 4 shiny purple bags, 4 faded fuchsia bags. +vibrant tomato bags contain 2 mirrored orange bags. +dotted gray bags contain 3 dotted purple bags. +drab gold bags contain 4 shiny gold bags. +mirrored teal bags contain 3 shiny magenta bags, 3 mirrored beige bags, 3 dotted silver bags, 5 mirrored indigo bags. +posh lavender bags contain 2 wavy teal bags, 4 striped violet bags, 1 vibrant gold bag. +dark lavender bags contain 3 light blue bags, 2 muted beige bags, 3 clear magenta bags, 1 light tan bag. +muted cyan bags contain 4 dull gold bags, 1 dim yellow bag, 4 striped cyan bags, 2 dim gold bags. +dim maroon bags contain 5 shiny purple bags. +shiny purple bags contain 5 pale violet bags, 2 light fuchsia bags, 2 mirrored red bags. +vibrant lime bags contain 4 bright orange bags, 1 posh beige bag. +vibrant teal bags contain 2 posh turquoise bags, 3 pale tomato bags, 3 dark bronze bags. +posh fuchsia bags contain 3 striped plum bags, 2 drab aqua bags. +dotted violet bags contain 5 plaid black bags, 1 clear salmon bag, 2 dull chartreuse bags. +clear gold bags contain 2 dull violet bags, 3 muted white bags. +dull cyan bags contain 4 pale violet bags, 2 light gold bags, 4 dark tomato bags. +posh beige bags contain 5 mirrored cyan bags, 5 dotted red bags, 3 clear purple bags, 3 posh white bags. +dotted maroon bags contain 3 pale orange bags, 1 striped black bag, 4 faded fuchsia bags. +dotted tomato bags contain 5 striped magenta bags, 4 striped orange bags, 3 muted teal bags, 3 bright black bags. +drab teal bags contain 5 striped tan bags, 4 dull green bags, 5 muted coral bags, 1 clear red bag. +vibrant magenta bags contain 5 bright orange bags, 4 mirrored gray bags, 1 faded tan bag, 4 faded brown bags. +posh crimson bags contain 5 light lime bags, 1 faded brown bag, 2 posh red bags. +dull lavender bags contain 4 clear green bags, 5 wavy orange bags, 5 posh green bags, 3 plaid orange bags. +wavy yellow bags contain 2 light teal bags. +dotted bronze bags contain 3 clear red bags, 4 posh plum bags, 4 light lavender bags, 4 faded fuchsia bags. +dim olive bags contain 2 dotted chartreuse bags. +dark gray bags contain 3 shiny olive bags. +posh salmon bags contain 1 pale purple bag, 2 clear tomato bags, 4 shiny gold bags. +shiny coral bags contain 3 dark olive bags, 2 dull fuchsia bags, 1 dull gold bag. +vibrant green bags contain 2 light fuchsia bags, 5 vibrant violet bags, 3 dotted blue bags. +pale lime bags contain 4 vibrant gold bags, 5 dotted yellow bags. +vibrant yellow bags contain 5 clear violet bags, 1 dark maroon bag. +pale beige bags contain 4 faded red bags, 4 striped green bags. +dim bronze bags contain 5 posh chartreuse bags, 5 light white bags. +clear fuchsia bags contain 5 posh yellow bags, 4 faded fuchsia bags. +faded chartreuse bags contain 5 drab purple bags, 1 wavy olive bag, 3 light black bags, 1 dotted brown bag. +mirrored turquoise bags contain 1 faded fuchsia bag, 2 mirrored blue bags. +light maroon bags contain 4 dotted blue bags, 4 muted gold bags, 3 faded lavender bags. +muted crimson bags contain 5 posh bronze bags. +mirrored blue bags contain 1 faded lavender bag, 5 bright chartreuse bags, 4 dotted brown bags. +striped brown bags contain 2 clear cyan bags, 4 vibrant orange bags, 5 shiny tan bags. +muted orange bags contain 3 dotted black bags, 4 clear beige bags, 2 plaid beige bags, 1 mirrored coral bag. +clear beige bags contain 3 wavy tan bags, 5 dark aqua bags. +bright silver bags contain 3 striped purple bags. +muted plum bags contain 5 light purple bags, 1 light lavender bag, 2 drab maroon bags, 1 posh black bag. +vibrant salmon bags contain 1 shiny teal bag. +dotted chartreuse bags contain 4 vibrant gold bags. +shiny lime bags contain 3 dotted crimson bags, 3 striped crimson bags. +wavy brown bags contain 1 pale violet bag, 3 light beige bags, 2 wavy aqua bags, 4 dim teal bags. +clear yellow bags contain 3 dotted tan bags. +bright red bags contain 1 dim tomato bag, 5 clear tan bags, 2 posh red bags, 5 mirrored yellow bags. +drab tomato bags contain 1 drab yellow bag. +dull crimson bags contain 1 dotted brown bag, 2 bright gray bags, 4 dim tan bags. +shiny beige bags contain 2 plaid teal bags. +dotted coral bags contain 4 plaid teal bags, 2 pale turquoise bags, 4 dark lime bags, 2 pale purple bags. +shiny plum bags contain 5 dull coral bags, 1 shiny gold bag. +light coral bags contain 2 pale bronze bags, 1 clear aqua bag. +vibrant cyan bags contain 1 muted fuchsia bag, 4 pale tan bags, 1 shiny green bag, 1 dotted blue bag. +bright purple bags contain 4 faded white bags. +mirrored chartreuse bags contain 2 shiny orange bags. +light brown bags contain 4 striped violet bags, 4 striped purple bags, 3 wavy yellow bags, 2 drab blue bags. +clear brown bags contain 1 clear indigo bag, 2 dark coral bags. +vibrant fuchsia bags contain 4 dull tan bags, 4 vibrant bronze bags, 1 light white bag, 5 vibrant tomato bags. +clear crimson bags contain 5 muted tomato bags. +muted red bags contain 2 dull beige bags, 2 dark turquoise bags, 1 dark fuchsia bag. +dull salmon bags contain 2 bright tan bags, 5 faded white bags, 4 muted beige bags, 1 dull cyan bag. +drab lavender bags contain 1 dark chartreuse bag. +vibrant plum bags contain 1 dark violet bag, 2 mirrored red bags, 3 muted purple bags, 5 dull blue bags. +drab maroon bags contain 3 plaid teal bags, 4 muted beige bags, 4 posh gold bags, 5 mirrored coral bags. +posh magenta bags contain 4 wavy tomato bags, 3 wavy beige bags. +striped olive bags contain 3 shiny plum bags, 4 plaid gold bags. +vibrant crimson bags contain 2 dim chartreuse bags. +drab lime bags contain 1 vibrant aqua bag. +wavy maroon bags contain 2 dark tan bags, 4 faded brown bags, 4 dim silver bags, 1 muted lime bag. +dull tomato bags contain 2 dotted bronze bags, 5 vibrant maroon bags, 4 plaid tan bags. +dim teal bags contain 5 muted beige bags, 2 mirrored indigo bags, 4 vibrant lavender bags. +wavy white bags contain 1 muted white bag, 1 dim chartreuse bag. +bright lime bags contain 3 dull gold bags, 2 dull indigo bags, 4 drab teal bags. +plaid aqua bags contain 4 light lavender bags, 4 posh gold bags, 3 wavy violet bags, 5 muted chartreuse bags. +mirrored purple bags contain 3 dark lavender bags, 3 clear salmon bags, 1 plaid white bag, 1 striped violet bag. +plaid maroon bags contain 4 dotted red bags, 1 mirrored coral bag, 5 muted indigo bags, 1 clear turquoise bag. +dark turquoise bags contain 4 bright crimson bags, 2 dotted bronze bags, 2 pale violet bags, 5 wavy aqua bags. +dull silver bags contain 2 wavy olive bags, 5 shiny violet bags. +muted olive bags contain 5 plaid beige bags, 3 dark brown bags, 1 clear black bag, 4 faded red bags. +drab indigo bags contain 1 pale violet bag. +muted lime bags contain 5 striped violet bags, 2 plaid lavender bags. +drab blue bags contain 1 pale tomato bag. +drab bronze bags contain 3 vibrant blue bags, 1 vibrant bronze bag. +muted gray bags contain 4 dim chartreuse bags. +striped teal bags contain 4 dark coral bags. +light green bags contain 2 plaid teal bags, 5 pale bronze bags, 3 dull teal bags. +plaid salmon bags contain 3 bright chartreuse bags. +dotted blue bags contain 4 drab plum bags, 1 light tan bag. +dark violet bags contain 5 dark coral bags, 5 dotted lavender bags, 5 pale brown bags, 1 vibrant lavender bag. +pale gold bags contain 1 bright silver bag, 2 dark cyan bags, 1 dull tan bag, 1 plaid blue bag. +light turquoise bags contain 3 drab turquoise bags, 1 dull tan bag, 3 muted indigo bags, 5 dotted fuchsia bags. +plaid blue bags contain 3 pale violet bags, 4 dotted brown bags. +bright magenta bags contain 4 shiny brown bags, 4 wavy violet bags, 3 dark aqua bags, 2 bright turquoise bags. +clear maroon bags contain 4 posh plum bags. +posh red bags contain 5 plaid cyan bags, 4 clear orange bags. +posh purple bags contain 5 plaid cyan bags, 1 drab lavender bag, 3 pale purple bags, 4 light coral bags. +dim lime bags contain 2 striped beige bags, 2 dark blue bags. +shiny indigo bags contain 2 vibrant black bags, 2 wavy orange bags. +posh gold bags contain 5 dull beige bags, 1 shiny teal bag. +wavy beige bags contain 2 dark beige bags, 4 muted chartreuse bags, 2 dim lavender bags, 2 mirrored indigo bags. +dim lavender bags contain 2 vibrant aqua bags. +mirrored beige bags contain 2 posh red bags, 3 pale olive bags, 3 dull brown bags. +clear indigo bags contain 1 shiny teal bag, 1 mirrored indigo bag. +dim chartreuse bags contain 5 bright tan bags. +plaid coral bags contain 2 clear green bags. +wavy cyan bags contain 2 drab blue bags, 5 dotted coral bags, 3 mirrored beige bags. +dotted crimson bags contain 1 muted tan bag, 4 dull maroon bags, 2 striped crimson bags. +drab cyan bags contain 1 dull cyan bag, 3 pale cyan bags, 4 faded aqua bags, 4 clear tan bags. +wavy coral bags contain 4 wavy plum bags, 5 plaid beige bags, 5 pale tan bags. +pale maroon bags contain 5 pale tan bags. +shiny blue bags contain 3 light coral bags, 4 bright olive bags. +plaid orange bags contain 2 dim white bags, 3 shiny silver bags, 3 pale violet bags. +dark tan bags contain 2 vibrant olive bags, 3 plaid turquoise bags, 2 dull chartreuse bags, 4 dull teal bags. +posh cyan bags contain 5 posh orange bags, 5 shiny brown bags. +clear red bags contain no other bags. +light fuchsia bags contain 4 dark beige bags, 1 light black bag, 1 striped blue bag. +striped beige bags contain 2 bright silver bags, 2 faded indigo bags, 1 plaid turquoise bag, 3 shiny plum bags. +wavy lavender bags contain 4 posh black bags, 1 dotted teal bag, 4 drab purple bags. +dotted cyan bags contain 5 dull yellow bags, 5 light beige bags, 2 vibrant aqua bags, 5 dark beige bags. +drab crimson bags contain 5 dark magenta bags. +plaid olive bags contain 1 vibrant crimson bag, 5 dim bronze bags, 1 striped black bag, 1 drab brown bag. +dim yellow bags contain 3 plaid gray bags, 5 vibrant salmon bags, 4 vibrant olive bags. +striped indigo bags contain 3 mirrored coral bags, 2 vibrant bronze bags, 3 dull brown bags. +dark green bags contain 3 shiny teal bags, 5 pale chartreuse bags, 5 dull teal bags, 5 striped silver bags. +drab aqua bags contain 5 dark aqua bags, 5 dotted blue bags, 1 pale violet bag, 1 pale bronze bag. +striped orange bags contain 3 striped green bags, 4 muted beige bags, 2 clear aqua bags, 3 dark crimson bags. +striped silver bags contain 1 pale cyan bag, 5 drab gold bags, 3 bright turquoise bags, 4 light gold bags. +bright blue bags contain 4 light black bags, 1 plaid salmon bag. +striped red bags contain 1 vibrant plum bag, 5 dull blue bags, 1 dull olive bag. +posh white bags contain 3 drab bronze bags, 4 bright crimson bags. +drab turquoise bags contain 4 striped crimson bags. +clear lavender bags contain 4 faded magenta bags, 1 mirrored gray bag, 4 wavy yellow bags, 1 dotted cyan bag. +drab chartreuse bags contain 1 shiny gray bag. +clear purple bags contain 1 shiny brown bag, 2 bright gray bags, 5 clear salmon bags. +dull magenta bags contain 1 posh cyan bag, 3 muted indigo bags, 1 dim lavender bag. +posh chartreuse bags contain 4 wavy violet bags. +posh maroon bags contain 4 striped gray bags. +clear blue bags contain 3 faded lime bags, 2 pale purple bags. +dark gold bags contain 2 dull beige bags, 3 plaid blue bags. +muted coral bags contain 4 dark gold bags. +bright aqua bags contain 3 muted crimson bags. +dull orange bags contain 3 posh gold bags. +shiny turquoise bags contain 3 dark brown bags, 5 shiny red bags, 3 muted beige bags. +mirrored brown bags contain 2 light orange bags, 5 drab coral bags, 2 wavy lime bags. +striped chartreuse bags contain 1 dark lavender bag, 4 pale salmon bags, 4 dotted violet bags, 4 clear tomato bags. +shiny salmon bags contain 4 dim magenta bags. +bright fuchsia bags contain 4 muted chartreuse bags, 3 mirrored green bags. +shiny tomato bags contain 5 clear gray bags, 2 drab silver bags, 3 clear green bags. +muted turquoise bags contain 5 shiny orange bags, 1 mirrored tan bag. +vibrant tan bags contain 1 faded magenta bag, 5 drab plum bags. +posh gray bags contain 2 posh magenta bags. +dark lime bags contain 5 clear aqua bags, 3 posh plum bags. +plaid violet bags contain 2 light bronze bags, 1 light green bag, 1 striped gold bag. +vibrant blue bags contain 2 wavy yellow bags, 4 dim magenta bags, 1 drab maroon bag, 4 dotted brown bags. +faded brown bags contain 2 pale blue bags, 4 bright olive bags, 1 bright bronze bag. +striped salmon bags contain 4 light green bags, 4 wavy orange bags, 3 mirrored coral bags. +plaid lime bags contain 1 bright green bag, 2 light indigo bags. +plaid chartreuse bags contain 4 vibrant green bags, 5 dotted coral bags, 2 muted gray bags, 4 bright purple bags. +light salmon bags contain 5 vibrant maroon bags, 3 dark lime bags, 5 drab tan bags, 1 striped cyan bag. +muted fuchsia bags contain 4 light silver bags, 3 light teal bags, 3 muted gold bags. +clear plum bags contain 5 light turquoise bags. +posh orange bags contain 5 wavy tan bags, 4 dark turquoise bags. +dotted tan bags contain 2 plaid teal bags. +shiny teal bags contain no other bags. +posh violet bags contain 2 vibrant tomato bags, 4 bright orange bags, 3 dotted red bags, 5 pale silver bags. +dotted lime bags contain 5 wavy tan bags, 2 dark tomato bags, 5 mirrored gray bags, 2 light aqua bags. +posh plum bags contain no other bags. +mirrored white bags contain 4 clear gold bags, 1 dark teal bag. +pale indigo bags contain 4 shiny magenta bags, 1 shiny maroon bag. +drab beige bags contain 1 muted plum bag, 5 posh turquoise bags, 2 vibrant fuchsia bags. +faded black bags contain 5 wavy black bags. +plaid beige bags contain 2 posh purple bags, 4 pale olive bags, 3 striped green bags, 5 bright orange bags. +faded white bags contain 4 clear red bags, 4 faded fuchsia bags, 1 dull beige bag. +shiny violet bags contain 3 shiny green bags, 5 wavy brown bags. +wavy blue bags contain 2 light teal bags, 4 dull silver bags, 2 bright black bags, 4 dull tan bags. +wavy red bags contain 4 dark silver bags, 5 dotted chartreuse bags, 2 clear salmon bags, 2 striped tan bags. +shiny lavender bags contain 2 muted bronze bags. +faded coral bags contain 5 dotted chartreuse bags, 2 vibrant silver bags, 2 wavy black bags. +clear coral bags contain 4 muted fuchsia bags. +mirrored coral bags contain 1 vibrant lavender bag. +dim black bags contain 2 bright olive bags, 1 dull teal bag, 4 shiny purple bags. +pale blue bags contain 1 light black bag, 2 light white bags, 1 dull maroon bag, 5 plaid teal bags. +plaid plum bags contain 3 muted coral bags, 1 dim brown bag, 2 plaid aqua bags, 1 vibrant blue bag. +muted black bags contain 5 light blue bags, 3 clear salmon bags. +dotted white bags contain 3 shiny salmon bags, 1 faded maroon bag. +drab coral bags contain 3 striped gold bags, 4 shiny aqua bags, 5 wavy red bags. +dotted salmon bags contain 4 drab black bags, 2 light aqua bags. +mirrored indigo bags contain 3 wavy orange bags, 5 posh plum bags. +vibrant violet bags contain 1 striped lavender bag, 1 muted purple bag, 2 drab silver bags, 5 pale olive bags. +plaid teal bags contain 4 shiny teal bags, 2 wavy turquoise bags, 2 vibrant aqua bags. +dull violet bags contain 5 light coral bags, 1 vibrant tan bag. +faded crimson bags contain 3 dark chartreuse bags, 2 vibrant cyan bags, 3 mirrored cyan bags. +posh bronze bags contain 4 plaid lavender bags, 3 shiny gold bags, 5 mirrored coral bags, 2 shiny indigo bags. +clear olive bags contain 2 muted gray bags, 2 dark red bags, 5 clear brown bags, 5 bright silver bags. diff --git a/2020/day7/day7.py b/2020/day7/day7.py new file mode 100644 index 0000000..22b9cc2 --- /dev/null +++ b/2020/day7/day7.py @@ -0,0 +1,50 @@ +#!/usr/bin/env python + +from collections import defaultdict +import regex +import sys + +RULE_REGEX = regex.compile(r'(.*) bags contain (?:(no|\d+) (.*?) bags?(?:, )?)+\.') + +def process_rules(rules): + rules_dict = {} + for rule in rules: + m = regex.fullmatch(RULE_REGEX, rule) + if m is None: + raise ValueError(f"Couldn't parse rule: {rule!r}") + colour = m.group(1) + child_nums = m.captures(2) + child_colours = m.captures(3) + + children = {} + + for n, c in zip(child_nums, child_colours): + if n == 'no': + continue + children[c] = int(n) + + rules_dict[colour] = children + + return rules_dict + +def can_contain(rules, colour): + parents = set() + for parent, children in rules.items(): + if colour in children: + parents.add(parent) + parents |= can_contain(rules, parent) + return parents + +def colour_contains(rules, colour): + children = defaultdict(lambda: 0) + for child_colour, child_num in rules[colour].items(): + children[child_colour] += child_num + for col, num in colour_contains(rules, child_colour).items(): + children[col] += child_num * num + return children + +if __name__ == '__main__': + bag_rules = [rule.strip() for rule in sys.stdin.readlines()] + rules = process_rules(bag_rules) + print(len(can_contain(rules, 'shiny gold'))) + print(sum(colour_contains(rules, 'shiny gold').values()))