From e3cb2ddd487134545efbd9ccf28786b08845b8b4 Mon Sep 17 00:00:00 2001 From: Teo-CD Date: Thu, 17 Dec 2020 16:57:44 +0100 Subject: [PATCH 1/3] Day 5 of 2020 done in Python --- 2020/Day 5/Solution.py | 42 +++ 2020/Day 5/input.txt | 824 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 866 insertions(+) create mode 100644 2020/Day 5/Solution.py create mode 100644 2020/Day 5/input.txt diff --git a/2020/Day 5/Solution.py b/2020/Day 5/Solution.py new file mode 100644 index 0000000..b5caddc --- /dev/null +++ b/2020/Day 5/Solution.py @@ -0,0 +1,42 @@ +from math import floor,ceil + +input_file = "input.txt" + +seats = [] + +with open(input_file) as boardings: + line = boardings.readline() + while line and line != "\n": + row_start = 0 + row_end = 127 + column_start = 0 + column_end = 7 + + for character in line: + if character == "F": + row_end = floor((row_start+row_end)/2) + elif character == "B": + row_start = ceil((row_start+row_end)/2) + elif character == "L": + column_end = floor((column_start+column_end)/2) + elif character == "R": + column_start = ceil((column_start+column_end)/2) + else: # End of line + seats.append(row_end*8+column_end) + + line = boardings.readline() + +print(f"Highest seat ID : {max(seats)}") + + +seats.sort() +possible_seats = list(range(seats[0], seats[-1]+1)) + +# There might be missing seats at the front or the back of the plane +# thus, if we sort and create a range between the smallest and largest ID +# and iterate over both, the number missing in the full range would be our seat. + +for i in range(len(seats)): + if seats[i] != possible_seats[i]: + print(f"Your seat is {possible_seats[i]}") + break diff --git a/2020/Day 5/input.txt b/2020/Day 5/input.txt new file mode 100644 index 0000000..6ef4cd6 --- /dev/null +++ b/2020/Day 5/input.txt @@ -0,0 +1,824 @@ +FFBBBFBLRL +BFFFBFBRRR +BFFFBFBLRL +BFFBFBBLRR +BBFFBFFRLL +BFFFBFBRLR +FFFFBBBRLR +BBFFFBBRRR +BBFBFBBRRR +BFFBBBFLRR +FFBBFBBRLR +BBFFBFFLLL +BFFFBFBLLR +FBBFFBFLRR +FBBFBBFRRL +BFFBBBBRRR +BFBBBBFLLL +BFFBFBFLRR +FBBFFBFRRR +FFBFBFBLRL +BFFFFBFLRR +FBBFFFFLRR +BFFFBBBLLL +BFBFFFBRLL +FFBBBBBRLL +FFBBFFBLLR +FBFFBBFLRL +FFBFFBBRRL +BFBBBBFLLR +BFFFFBFRRL +BFFBFFFLLL +FBFFFBFLRL +FBBBFFFLLL +FFBFBBFRLR +FBBBFBFRRL +BFBBBFBLLL +FBFFFBFLRR +FBFBFFBLRR +BFFFFBFLRL +FBFBFFFRRL +FBBFBFBLRL +FBBFFBFLLL +FBFBBBBRRR +FBBBBBFLRR +FBBBFBBLLR +FFFBFBFRLL +FFFBBFFLRR +BFBBFFBRRL +FFBFBFBRRL +FBFBBBBLRR +BFFBBFFLLL +FFFBFBBRRL +BFBBFFFLRR +FBFBFBFLRL +BFBFFBFLLL +FBBBFBFRLR +FBBBFBFLLL +BFBFFFBLRR +BFFBFBFLRL +BFBBFFFRRR +FFFBFFFRLR +FFFBBBBRLL +FFBBBBBLLL +BFBBBFBRLL +FFFBBBFLLR +BBFFFFFRRL +FBFBBFFRLL +BFFBFBFRLR +FBFBBFFRRL +FBFBBFFLLL +FBFBBBBRLL +FBBFFBFLRL +BFFBFBBRRL +FBBFBFBRRL +FFFBBFBLRR +BFFBBBFRLL +FBFFFFFRRR +BFFFFBBLRR +FBBFFFBRRL +FBBBBBBRRR +FFFBBFFLLR +BBFBFFFRRL +BBFFFFBRRL +FBBBFBFLRL +FFBFBBFRRR +FFBBBFFLRL +BFFBFFFLRL +BFBFBFBRRR +BFBBFFBRLL +BFFFFBBLLR +FBBBFBBLRR +BFFBFFFLRR +BFFFBFBLLL +FBBBBBFRRR +BFFBFBFLLL +FBFFBFFRRL +BFBBFBBRRR +FBFFFBFRRL +BFBBBFBLLR +BFBBBBBRRR +FFFBFBFRRL +BFFFBFFLLL +BFFFFFFLRR +FFBBFFFRLL +BFFBFFFRRR +BBFFBBFLRL +FBFBBBBLLR +FFFBFFBLRL +FFBBBBBRLR +FBFFBFFRRR +BFBBFBBRLR +FBFBBBBLRL +BFBBFFFLLR +FBBBFBBLRL +BFFBBBFLLR +FFFBBBBRRR +BBFBFFFLRL +FBFBBFFLLR +BBFFFFBLRR +FFBBFFBRRR +FFBBBFBRLL +BFFFFBFLLL +BBFFBFBRLR +FBFBBFBRRL +FFFBBBFRRR +FBBBFBBRRL +FFFBFBBRRR +FBFFBBBRLL +FFBFBBBRLR +BFFFBBBRLL +FBBFBBBRLL +FBBBBBBLLR +FBFBBFBLRR +BFBFBFBLRL +FFFBFFBRLR +BFFFFFFRLL +BFFBFBBLRL +FBFFBFFLRR +FBFBBBBRLR +BBFFFBBLRL +FBBBFBBRRR +BBFBFBFRRR +FBFBFFFLRR +BBFBFFBLLL +FBBBFFFLLR +BFBFFBFRRL +BFBBBBFRLL +FFBFBFFLRL +FBBBBFBLRR +FBBBBFFLLR +FFBBFFBLLL +FBFFFBBRRR +FFBBBBFLLR +BFBFBFFRRL +FFBBBBBLRR +BFFFFFFRRL +BBFBFFFLRR +BFFBFBFRRL +BBFFBBBRRR +BBFFBFFLRL +FFFBFFBRRR +BFBFBBFRLR +BBFBFBBLRR +BFBBBBBRLL +FBBBFFBRRL +FBBBBBBRLL +FBBFBBFRLR +FBBFFFFRRL +BFBFFBFRRR +BFBBFFFLLL +FBFFBFFLLR +BFBBBFBLRR +BFFBBBBRLL +FBBBBBBLRR +FFBFFBFRRL +BBFFFBBRLL +FBFFFBBRLL +FFBBFFFLRL +BFBBBBFRRL +FFBFFBBRRR +BFFBBFBRLL +FFBFFFBLLR +FFBFFFFLLL +FBBBBBFLLR +FBFBFBBLLR +FBFBBFBRRR +BFBFFFFLRR +BFBBFFBRRR +FBFBFFFRRR +FFBFBBBRLL +BFBBBFBRRL +BFFBBBFLRL +BBFBFFFRLR +BBFBBFFLRR +FBBFFBBRRL +FBFBBBFLRL +FFBFBBFRRL +BFBFFBFLRL +BFFFBFFRLR +BBFBBFFRLR +FFBFBFBLLL +BFBFFBBRRR +BBFFBBBRRL +FBBBFBBLLL +FFFBFFFLRL +BBFFBFBLLL +BFBBFFFRLR +FBBBBFBLRL +BFBFBBBLRL +FFFBFBFRLR +FBFFFFBRRL +BFFBBFFLLR +FBFFFFFRRL +FBBFFBFRLR +FBBBFBBRLL +FBFFFFFLLR +BFBFBBBLLR +FFBBBBBRRR +BFFFBBFLLR +FBFBBFBLLL +FBBFFFFLLR +FBFFFFBLRL +FBBBFBBRLR +FBBFBBFLRR +FBBBBBBRRL +BBFBFBFLRL +FFBBBBFRRL +BFBBFBFLRL +BFFFFFFRRR +BBFBFBBLRL +BFBFFFFRLL +BBFFBFBRRR +BFBFFBBLLR +FBFBFFBRRL +FFBBFBFLLL +BFBFBBBRLR +FFBBFBFLRL +BBFFFFFRRR +FBFFFFFLRL +FFBFBFBRLL +BBFFFFFLRR +BBFFFBBRLR +FBFBBFBRLR +FBBBBBFLRL +FBBFFFBLRR +FFFBBFBLLL +BBFBFFBRLL +FFBFBFBLLR +BFBBFBBRRL +BFFBFFBLLL +BBFFBFFRLR +BBFFBBFLLR +BFFFFFBLRL +FBBFFFBLLL +FBFFFFBLLR +FBBFBFFRRL +BFBBBFFRRL +BBFFFBFLRL +FBFBFBFLLR +FBFFFBBRLR +BBFFBFBRLL +BBFFBFFRRL +BBFFBBFRLR +FBFFBFBRLL +BFBFBBFRRR +BFBBFBBLRL +FFBBFFBRLL +FBFFBFBRLR +BBFBFBBLLR +BFBBBFFRLL +FFBFFBFLLL +BFBFFBFRLR +BFFFBBFLRL +BFFFBBBLRL +BFBBBFFLLR +FBBFBBFRRR +BFFBFFBRRL +BFBFFBBRRL +BFBBFBFRLL +FBBFFBFRLL +FFBBBBFRLL +FBBBFFBRLL +BBFFBFBLRL +BBFFFFFLLL +BBFFFFBRRR +FBBBBFBRLR +BFFBFFBRRR +FFBFBFFRLL +FFFFBBFRRR +BBFBBFFLRL +FFFBBBFLRR +BFFBFBBLLL +BFBBFFFLRL +BFFBFFFRLL +BFBFFBBRLL +FFBBBBFLLL +BFFBFBBRRR +BFBBBBFRRR +FFBFFFFRLR +BFBFBFFRRR +BFBFBBBLRR +FBBBFFFLRR +FFBFFFBRRL +FBBFFFBRLR +FFFBFFBRLL +BFBBFFBLLR +FFBBFBBLRL +FFBFFFBRLR +BFBBFFFRLL +FBBFBBBLLL +FBBFFFFLLL +FFBFBBBRRR +FFFBBBFLRL +BBFFBBFLRR +FFFBFFFRLL +FFBBFBFRRR +FBFFBFBRRR +BFFBBFBLRL +FFFBBBFRLL +FBBBFFBRRR +FFBBBBFLRL +FFBFBBBRRL +FBFBFFBRRR +FBFFFBBLLL +FBBFFFFLRL +BFFFFBBRLR +BFBBBBBRLR +BBFFFBBRRL +BBFBFBFRLR +FBFFFFFLLL +FBFBBBBRRL +BFBFFFBLRL +FFFFBBBLLR +FFBBBFBRLR +FBBFFFFRRR +BBFBFFBLRL +BBFFFFBLRL +BFBFFBFLRR +FFFBBBBLRR +FBBBBBBLRL +FBBFFBFRRL +FBFFBBBRRL +FBFFBBFRRL +FFFBFBFLLR +BBFFFFFRLL +FFFBBBBLLR +BBFFBBBLRR +FBFBFFBLLR +BFBBFBBRLL +BFFFFFBRLR +FFFBFBBLRR +BFFBBBBLLL +BFFBBFBLLR +FBBBBBFRLR +BBFBFFBRLR +FBFFBFFLLL +FBBFBBBLLR +FFFFBBBRRL +FBBFBBFRLL +BFBFFFFRLR +FFFFBBBRLL +BFBBBFFLLL +BFBFBFFRLR +FBFBFFBRLL +FBBBFFFRLL +FBFBFFBRLR +FBBBBFFRLR +BBFBFFFRLL +BFFBBBBRLR +BFBFFFFRRL +FBBBFFFRRR +FFBFFBBRLR +FFBBBBFLRR +BBFBBFBRRL +BFFBFFBLLR +BBFBBFBRLL +FBFFBFBLLR +BBFBFBFLLR +FBFBFBBRLR +BBFBBFFRRL +BFBFFFBLLR +BFBFFBBLLL +FBFFBFBLRR +BFBBBBBLLL +BFFFBFFRRL +BFBBBFBRLR +BBFFFBFRLL +BFFBFFBRLL +BBFBBFFLLL +BFBBBBBLRR +FFFBFFBLLL +BBFFBBBRLL +FFFBBBBLRL +FFBBBFBLLR +FFBBFFBLRL +FFBBFFBLRR +FBBBBBBRLR +BFFFBBBLLR +FBBFBFBLRR +FBFBFBFRLR +FFBFBBBLRR +FFFFBBBLRL +FFFBBFFRLL +FFFBFFFLRR +BBFFFFBLLR +BFBFBFFLLL +FFBBBFFRLR +FBBFBFBRLL +FFBBBFBLLL +FBBFFFBLLR +BBFBFFBLRR +BFFFFBBLLL +FBBBFBFLLR +FFBBBFFLRR +BFFBBBFRRR +FFBFFFBLRR +FBBFFBBRLR +BFBBFBFLRR +FFFBBFFRRR +FFBFFFFRLL +FFFBFBFRRR +FFBFFFFRRR +FBBFBBBLRL +FFFBFBBRLR +FBBFFFBRLL +FFBFBFFRLR +FBBBBFFRRR +BFBFFBBLRR +FBFFBBBLRL +FBBFBBFLLR +BBFFFFFLRL +BFBBFBFRLR +BFFBFFBLRR +FFBFFFBRLL +FBFBFFBLLL +BFFFFFBLLL +FBFFBBFLLL +BFBFFBBRLR +FBFBBFBRLL +FFBBFBBRLL +BFFFBBBRLR +BFFFFFFLRL +BBFFFBBLLR +BFBFBBFLRL +FFBBBFFRRL +BBFFFBFLLL +BBFFBBBLLL +BBFFBFBLLR +FBFBBBFRLL +FFBBBBBRRL +FFBBBFFLLR +FFBFBBBLRL +BFFBFFBLRL +BFFFBFFRRR +BFBFFFBRRR +FFFBBBFRLR +FFBBFBBLLR +BFFFBBFLRR +FFBBBBFRRR +BFBFBBFLRR +FFFBBBBRRL +BFBFFBFRLL +FBFFBFFRLR +FBBFFFFRLR +BFBBBBBLRL +FFBBFBBLLL +FFBFBBFLLR +BFFBBBBLRL +BFBFFFFLRL +BBFFFBFRRL +FFBFFBBLRR +FBFBFBFRRR +BBFFFBFRLR +BFBBBFFLRR +BBFBFFBLLR +BBFBBFBLLR +FBFFFBFRLL +BFBFBBBLLL +FBBFBFFLRL +BFFFBBBLRR +BBFBFFBRRR +FBBFFFFRLL +BFFFBBBRRL +FBBFBBBRRR +FBBFFBFLLR +BFFFFFBRRL +FBFFFFBRLR +FBFBFBBRRR +FBFBFBFRLL +BFFBFFFRRL +FFFBBFFRRL +BFBFFFBRLR +FBBFBFFLRR +BFFFBFBRRL +FBFBBBFLLR +FBFBBBFRRR +FBFFBFBLRL +FFFFBBBRRR +FFBBBFFRRR +FFFBFBFLLL +BFBBFFBLRR +FBBFBFBRRR +BBFFBBFRRL +BBFFBFFRRR +BBFFBFFLRR +FBBFFBBLRR +BFBFFFFRRR +BFFBFBBRLR +BFFFBBFRLL +BFBFBBBRLL +BBFFFBBLRR +FFBBFBFLRR +FBFBBBFLLL +BBFFBBBLLR +FFBBFFFLRR +FBFFFBFRRR +BFBBFBBLLR +FFBBFBFRLR +BFBFFFFLLR +FBBBFBFRRR +BFBBFBFRRR +BFFBFBFRRR +FFBFBBBLLR +FBFBFFFRLR +FBBFBFBLLL +BFFBBFFRLL +FBBBBFBLLR +FFFBBBFLLL +BFBFBBFRLL +FFFBFBFLRR +FBBBBFBLLL +FFBBFBFRLL +BBFFBBFRRR +FFBFFBFRLL +FBFBFBBLLL +FBFFBBBLLR +FFFBFBBLRL +FFFBBFBRRR +FBFFBFFLRL +FBBFBFBLLR +BFBBBBFRLR +FBBFBFBRLR +FFFBFFBRRL +FBFBBFBLLR +BFFBFFFRLR +FFBFBFBLRR +BFBFBBBRRL +FBFFFFFLRR +FFFBBFFLLL +BFFFBBFRLR +FFBFFBFRLR +BBFFFFBRLR +BFFBFFBRLR +BFBFBFBRLR +FFBFFBBRLL +FBBBFFBLLL +BFBBBBBLLR +BFFFFBFRLL +FBBFFFBRRR +FFFFBBBLLL +FBFBFBBRRL +FBFFFFFRLR +FBFFBBFRRR +BFFBBFFLRL +BFBFBBBRRR +FBBFBFFRLR +BFFBBFBRRL +BFBBFBFRRL +FBFFFBBRRL +FBBFFBBLLL +FBFBFBBRLL +BFFFFBFRRR +FBBBFFBLLR +FBBFBBBLRR +FFBFBFFLLR +FBFFBFFRLL +FBBBFFBRLR +FBFFBBBLLL +FBFBFBFRRL +BBFBBFBLLL +FFBFBFFRRL +FBBBFFFRRL +FBFFBBFLRR +FBFBFFFLLR +BFFFFBBLRL +BFBFBFFLRL +FBFFFFBLLL +FBBBFFFLRL +BFFBBBBLLR +BFFBBBFLLL +BFFBBFBRRR +FBBBFBFRLL +BBFBFFFRRR +BFBBBFFRLR +FFBFBFBRRR +FBFFBBFRLL +FFFBBBBLLL +FBFFBFBRRL +BFFFFFBLLR +BFBFFFBLLL +FBFBBBBLLL +BFFBBFFRRL +BBFFBFBRRL +FBBFBFFRRR +BFBBFFBLLL +BFBFFBBLRL +BBFFFFFLLR +FFBFBBFRLL +FFBFFBFLLR +FBBFFBBLRL +BBFFFFBLLL +BFFFBFFLLR +FBFFFBFLLL +BBFBFBFLLL +FFBFFBBLRL +FBFFBBBRLR +BFFFFBBRRL +FFBBBBBLLR +FFBBFBFRRL +FFBFBBFLRL +FFBFBFFLRR +FFFBFFBLLR +BBFBFBBRLL +BFBBBBBRRL +FBFBBBFRLR +FBFBFFFRLL +BFFFFFFLLR +FBBBBFFLLL +FBBBFFBLRR +BFFFBFBLRR +FBBBFFFRLR +BFFFFFBRLL +FBBBBFBRRL +BFBBBFBLRL +FFBBFBBLRR +BFFBBFBLLL +BFBBFFFRRL +FBBBBFFRRL +BFFFBBFRRR +FFFBFFFRRR +FBFBBFBLRL +BFBBFFBLRL +BBFBBFBRLR +BBFBBFBLRL +FFBFBFFRRR +BBFFBBFLLL +FBBBFFBLRL +FBBFFBBRRR +BFFBFBFLLR +FBFBFBBLRR +BFFFBBBRRR +FBBFBFFLLL +FBFBBFFLRR +FFBBFFBRLR +FFBBBBBLRL +FFBBBFBRRL +BFBFBFBLRR +FBFFFFFRLL +BFBFBBFLLL +BBFBFBBRRL +FBFBFBFLLL +FFBFFBBLLR +FFFBFFFLLR +BFFFBFBRLL +FBBFFBBRLL +FBBFBFFLLR +BFFFFBFLLR +BFFFFFBLRR +BBFFFBFLRR +FBFBBFFRLR +BFBBFBFLLL +BFFBBBFRLR +BBFBFBBRLR +FFBBFBFLLR +BBFBFBFRRL +FBFBFBBLRL +FBFFFBBLRR +FBFBBFFRRR +BFFFFBFRLR +FBFFFBFLLR +FFBBBFFRLL +FBFBFFFLRL +BFFFBBFLLL +FFFBBFBRLL +FFBBBFFLLL +BFBBFBFLLR +FFBFBBFLLL +BFFBBBBRRL +BBFFBBBLRL +FBFFFFBLRR +BFBBFBBLRR +BFBBBFBRRR +BBFBFFFLLL +BFFBBFFRLR +BFFFBFFLRL +FBBBBFFRLL +FBFFBBFLLR +FBFBFFFLLL +BFFBBFFLRR +FFBBFBBRRL +BFBFBBFLLR +FFFBBFBLRL +FFBBFFFRRR +BBFFFBFRRR +FBBBBFFLRL +FFFBFBBLLL +FFFBBFFRLR +FBFFFBBLRL +BBFBFBFRLL +BBFFBBBRLR +FFFBBFBRLR +BBFBBFFRLL +BBFFFFFRLR +BFBFBFBLLL +BBFBFFFLLR +FBFFBFBLLL +BBFFFBBLLL +FBFFFFBRLL +BBFFFFBRLL +FFBFFFBRRR +BFFFFFFRLR +BBFFBBFRLL +BFBFFFBRRL +FFBBBBFRLR +FFBFFBFRRR +BBFBFBFLRR +FFBFFBFLRL +BFBFBFFLLR +FBBBBBFLLL +FFBFFFBLLL +FFBBBFBLRR +FFFFBBFRRL +FBFBBBFLRR +BFFBBFFRRR +FBFBBBFRRL +BFFFFFBRRR +BFBFBBFRRL +BFBFBFBRLL +BFBFFFFLLL +FBBBBBFRRL +BFBBBBFLRR +BBFBBFFRRR +BFFBFFFLLR +BFBBFBBLLL +FBFFFFBRRR +FBFFFBFRLR +BFFBFBBRLL +FFBBBFBRRR +FFBBFFFLLR +BBFBBFFLLR +BFBBFFBRLR +FFFBBFFLRL +BFFFFFFLLL +FFBBFFFRLR +BFFBFBFRLL +FFBFFBBLLL +BFFFBFFLRR +FFBFFFFLRR +FBBBBFBRLL +BFBFFBFLLR +FFBBFFBRRL +BFFBBFBLRR +FFBFFBFLRR +BFFBFBBLLR +FBBFBBFLLL +FBFFBBBLRR +BBFFBFFLLR +BFBBBFFRRR +FFFBFFFRRL +FBBFBBBRRL +FFFBFBBLLR +BFFFBFFRLL +BBFBFFBRRL +FFBFFFFRRL +FFBFBFBRLR +FBBFBFFRLL +FFFBBFBLLR +FFFBBBFRRL +FBBBBBFRLL +BFFFBBFRRL +BFBFBFBRRL +FBBBBFFLRR +FFFBBFBRRL +BFFBBFBRLR +BBFBFBBLLL +FFBFFFFLLR +FFBFFFFLRL +FFFFBBBLRR +BBFBBFBLRR +FBBBFBFLRR +FFFBFBBRLL +FBFFBBFRLR +FFBFBBFLRR +FFFBFBFLRL +FFFBBBBRLR +FBBFBBBRLR +FBFBFFBLRL +BFBBBBFLRL +BFFFFBBRRR +BFFBBBFRRL +BFFFFBBRLL +BFBFBFFLRR +BBFFBFBLRR +FBBFBBFLRL +FFFBFFFLLL +FBBBBFBRRR +FBFFFBBLLR +FBBFFBBLLR +FFBBFFFLLL +FFBFBFFLLL +FBFBFBFLRR +BBFFFBFLLR +BFFBBBBLRR +FBBFFFBLRL +FFFBFFBLRR +BFBFBFBLLR +FBFBBFFLRL +BFBFBFFRLL +FFBFBBBLLL +FBFFBBBRRR +FFBBFFFRRL +FFBBFBBRRR +FFBFFFBLRL +BFBBBFFLRL From 1b76468550ad5e0cfd78f86aa52eb949abb25e24 Mon Sep 17 00:00:00 2001 From: Teo-CD Date: Thu, 17 Dec 2020 17:39:24 +0100 Subject: [PATCH 2/3] Day 6 of 2020 done in Python --- 2020/Day 6/Solution.py | 46 + 2020/Day 6/input.txt | 2044 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 2090 insertions(+) create mode 100644 2020/Day 6/Solution.py create mode 100644 2020/Day 6/input.txt diff --git a/2020/Day 6/Solution.py b/2020/Day 6/Solution.py new file mode 100644 index 0000000..d0719a0 --- /dev/null +++ b/2020/Day 6/Solution.py @@ -0,0 +1,46 @@ +input_file = "input.txt" + +answers = [] +participants = [] + +with open(input_file) as group_answers: + line = group_answers.readline() + answers.append({}) + # Count from zero as the last line return is for the group separation + participant_count = 0 + + while line: + if line == "\n": + answers.append({}) + participants.append(participant_count) + participant_count = 0 + line = group_answers.readline() + continue + + for character in line: + if character == '\n': + participant_count += 1 + break + + # Count answers for each questions + if character in answers[-1]: + answers[-1][character] += 1 + else: + answers[-1][character] = 1 + + line = group_answers.readline() + +print(f"The total number of positive answers is {sum([len(answer_dict) for answer_dict in answers])}") + +sum_of_all_yes = 0 + +# Compare the count of yes for each answer with the count of people in the group. +# Do so by iterating over both arrays at once and then iterating over the keys of the answer dictionary. + +for index in range(len(participants)): + for key in answers[index]: + if answers[index][key] == participants[index]: + sum_of_all_yes += 1 + + +print(f"The total number of positive answer by each member of each group is {sum_of_all_yes}") diff --git a/2020/Day 6/input.txt b/2020/Day 6/input.txt new file mode 100644 index 0000000..e965d96 --- /dev/null +++ b/2020/Day 6/input.txt @@ -0,0 +1,2044 @@ +c +jc +ck +cue +c + +ysjircxtgfzpb +ynsxpgtcifz +riydpzsfxutcg +gsyitzdvpfcrox +yclxfzietsmghwp + +bacqdjhsf +fhbdjacsq +tbjmcxlqashdfo +hebjascfdq +bgqjscdfha + +pt +tp +xtzn +tu +pt + +zjn +nzj + +h +h +rzh +h + +cfqurmlxnzhpy +wjaufshgemktox + +ah +ahe +tvhrq + +awbte +tbawjen +wtubea +wjaebt +ewtab + +vlz +lv +vrqyl +lv +elv + +rfu +rpujz + +foniw +nfo + +kaumhjywgtvzndcire +qulkzxoinadvtbgymh +vgdzlahiounmykt +tkglyzdunsvmhoxiaf + +rxmdbgikaywentqvzhfolcpuj +enipkytvdmbgqzaufjxlohwrc + +gdhiqazwcv +mouqpltacvw +dcvyqhwfaj +wbhgaevcqn +vawqkcxr + +dmtaowgp +mwtdipa + +rvpwoshm +osvprmwh +smwpfvhr + +axmhdqzctfspgeu +zpmcauexshtfdq +dqfmteacshpxzu + +ptryjvufglaxmqwonck +nupfyjrwktlmxaqgvc +tjgapcflbmuynqwvxrk +rwjgnauflvymcotkqxdp +sejyrkqtwalhncxuvfpmg + +kjlucpqysrbe +cotlifeqgmspzkdr +prasckbluqe + +svjwcigopdflhy +corvxsaigbflwheyqzuj +dfclkgmwsvyithoj + +sxrynelg +elygxoms +glmexyt +uyxfgelkb + +cljshbxnaeqrivupwtgz +qplrtgeshxviaunwcbz +whcxivzgtaneqpsrbul +lvgzibncxwrdopqeatuhs +zlqcvbmrsktwpeaxinuhg + +fngcrihykv +irhgfkvcny +ivpcfgkhrny +ckhyirdfngv +vnchisygrkf + +rsqmk +kufbscval +yjksih +jksmo + +knszclmhryfvgdtwj +jhrwzlgdfyqcv + +ulbyhi +yqhuzsim +hkienuwfcy +yuhpio + +nqblomzhgtikdwjpcasyvuexf +kngcjvymbzqoahesfi + +xlebgtjpz +svlqfwkuaipbmc +rhgxplndb +lpzjbyo + +rzqpashvw +dmlcoq + +hkxi +kixh +hikx +xhik + +pljraokdmec +zhtdrlaqfgbnue + +peofrnkgauhzctwldjb +tgnbokrjufmshd +ygktbmnuodshrfjx + +bfzqvolaymsxue +beyvlnfsqzuxao +vfozbaisjyexhqgclrwu +fsxpaobulvzyeq +flzxbesauqvoy + +jipavclbehxrngdwsk +mkjshalwdxqntev + +ixrtj +wcmxij +mjwix +xzvjghbdnuqi +ixrjs + +lroxesmfqdbt +qtloefydr +lerfqivnjodt +eokdmftlxqr + +akow +ka + +pnjkvoxatm +jmktpoaxnv + +ufejltwq +teqfljuw +twqjufel +eultqwjf + +ucoleqmyxfwzhnriskt +lnkfuiythsxrzwemocq + +fvwakuorhpzyjmxl +ahltpwjozkxmf +wkpjzfhmdlexsao +jxolzknmhpwcfa +lfjhtsxqkmwoazpd + +guoytrawsiexknq +gopukszvctnjbai +iaglmuotnsk +kgdisuotafn + +pdtsnx +ns + +ign +ngi +ding + +dhryg +cksn +ih +ebpo +qxs + +bavsrfcntmgqxu +fxbnvpasmuogqc +gcusamnbfqxv +ikmnhvybqgxcdfusa + +k +jk +k +j +nh + +mjsfl +omisj + +umdoiqabcrhlyf +olymbihfdusaqc + +wuvymbghitrelazpok +gsmrepwzkuthbvil + +gfdjb +gbfjd +fgjbd + +jdxghipmorlvfzw +zqlcjwfrbvpoxmid +enwrflodjzstapmuyik + +laiegdk +nvhqlgz +xscuf + +ubtdong +nubdysrg +dgubn + +n +n +oycw + +dmlewthyrqnkxagvszb +vdgkyxabtqhnzmsewlr +hdbxnvtwzyspkqagmelr +hnzlrtywdfaqsjbemxgkv +mrkqbdsyaegvzlwxtnh + +rkouvs +kpobrgq +cxknfrow + +uyve +uyve +yvuce +vekouy +euyv + +avgoinutrxjymlpbqwhsek +pwirvaostmgjukxnqhebyl +okndimpehgtlsujqaxbywrv +anbvohsetlpqirxyfjkmwug +jqenglrhkuixbyapmvtsow + +zbos +szbo +szbo +obizs +zabso + +dstiveo +edsivo +evodsi + +vimbcytwuzajlqogpkfrexd +jdubvxkeofqrgzytipncla +gpkqrlyofaxzictejuvdb + +db +cbd +db +db +db + +k +k +k +k +k + +wqo +qo +oq +qoc +likmqoef + +vdfrjn +orjfna +fmrjnd + +iyashplx +haslxypi +ahpsxyil +yxhliaps +hiasyzpxl + +ucdlfx +lcxudf +cxdflu +dcxulf +fxlucd + +etfhylmiajvcdxnqbps +fastbwphiqdlruxymcokv +tsxfidhcymqapgblv +spzhavtmdqgjlyicbxf + +jxc +cjb + +cowg +qxzwajco + +rypjntgd +splna +pxuvcnke +ljpmznwrdft +podn + +uowirdqvc +gtpimard + +hntmubdlvspagxqy +ycbfnkjrzw + +bjvnyau +uakxynm + +danpzlubyhgsfxtkvjriewo +fahtkzslbpwyijongvrxud +galonbkpxzsdwtfrivjyuh + +gspxvjoq +oiqzjv +gqpjov +qjvonr +ujmahqyeobv + +gzuovxlmwhjbesqipak +tcjkrfanexgudqsb + +xkvgzaqfeih +vkqgiezcfxh +hzxkfvqgei +kxigvqhezf +yxgzkhefdivq + +ypaof +opya +yaop + +tiefwhqyzxr +tljiwxyeqhrzf +qezwhtsifxry +zfrpxeqytwhi + +fbscaxrhpdeqz +rehxpfg +fhroxep +kpxhtref + +tynqhrdulomfxazgipjb +oltrqiwcfjaspvuekn + +epbvtfldsixj +xcdnzbetv +zbvltcadx +txzbmvd +qktdovwxuhb + +uqtewcsrdiyphkxjvboz +hovsxtqckzurwipyje +xcpwthszuiknjoyqevr + +bqckxnvtdfspzu +vcfdanxspzkqtbu +dxckstuqvzynbpf + +hjus +oxsuhj +hjsu + +bxait +bftijxaw +tabix + +gvmdl +kfla +utpywqrsz +ngol +xiha + +ydvxqtkarigh +iohkgyczqtdrxs + +pzhxoytmave +xzamvptoyeh +stimxyevapzoh +vxmohptayez +hlvpyamoexrzt + +vdjsy +dsyv + +wedcxpt +viawqdpefco +cesudwp +upwtdceg +pweucd + +u +u +u +u +u + +unwkls +fkuanylm +lumank +eqlorxcgkuvtn +lzufnkh + +wembhayqcks +bksyqhceamw +qwceskyabhm +iwekfymbchqas +sormjywlhbzupckaeq + +krtohjcvxidyfm +sewgzil +piwbza +uqib + +ghpnicabeuroftvkyzm +raionvykhtfcbpmzgeu +tnzgcvubrhaefmkpioy +pvfnetiycurkomazgbh +honmbpfvzctkiryaegu + +q +h +jdg + +bykvmpgojzwlrcexi +yzwerjpcbgkivoxlm +ecvyijmbpzwrkxgol +wyjripkzlmcxgoebv +ljzcrwoemkpgisxbyv + +ugmaicqtejkbhsx +xtahjbsimcqukeg +ximchajkfgtvbuesq + +nrqfdcghioslp +lzsrthgfndoip +drslpfgniho + +q +fqb +q +qfdz +umaxtq + +joucqnzsgt +jgquo +uoqgyjpb +eojlqgu +ujgkwqo + +lhcrnxkogepw +wheorgpcnxkl +wrexgponhlck + +chgqirekozbypjst +hyqdvsjbrctzgpuoi + +fylsimtuvad +ytgdhicfjauvml +vafiuldmtyp +uptifdslmvay + +obkuc +wnm +rvgqdayhjte +x +pfs + +yrkv +rdvyt +fynrejcw +yrdk + +dfqnchypg +hgypnfdqc +pcqhgydfn +qcgfjhndyp + +b +t +t +t +t + +ehajgwscibr +uhdcmiwbjr +irbknwjhc + +gihcrjazpld +adgsnzjxlihrp +lzfhgdajpir +rgzlhnjqidpa + +rzpvjmbuac +qwbgmzurcpj +ujpmzbfrc +mucbrfzjp + +fu +fu +uf +fu + +tliwkzcanyjebq +mealtnofizcqjbsw + +eakbolcjugnmwdhrzy +elumwbzorjhnkcgayd +arnhycmjebduwgolkz +zbwaklmordhcgejynu + +ysnalmr +lsynrmf +simnbrfl +lsnimr +kmqlwsrxn + +ozbdtcgifhe +iocmtzdgefvh +efcgtdihzo +oczphgetlfdi + +wumdilea +jyahzgspq +iba + +wsonzrb +rboszwn +ozbnysrw +wbznros + +wzumjfrvscpq +cliwvsqbfzpeoru + +d +tdpm +rd + +vgnpfu +kgpaqictf + +phjlzk +pu +up +iwp + +edsbcnioxqlafupywkh +lfbqrhnxiseacyjkpow +xgeonhfqcybsapkiwrl + +wvczikeobyuamfpd +bxroupgizjkaytcmenwf + +q +q +q +kq +q + +eintqz +tqin +qitys +tifqxkh +qitsmv + +hdtzoyjrqkwpalv +owzjvahkdqlyprt +jhoywtdvkrpazlq +oyzavltphdkqwrj + +sxgfl +fxlge +glfx + +ntozcvdqes +ordesnczqtv +ntedczuvqos +svtaeodcznq + +lcpoi +uxinkaol +eyoila +owliy +jzhqdtlirmfsbgvo + +mje +jem + +kqunjoi +jiuno +oinju +tohinj +uionj + +o +pcgodj +oi +o +osi + +sqvmoejdgibuwyxrknfzapt +czlystrwjvpef + +ybtaflcopmirjdusxzvkhq +zlevmpqauroticjhbgkxfd +frumxlpzqivcwthkbdaoj + +wdivrf +fzritwjn +eioxqhkyfs +fiv + +gvs +scmrg + +vzgt +tzg +gwozt +wgzto +gtpdz + +rvh +r +zr +r +rdw + +fqkxosbgwynic +csfikqnbxgwyo +kogibcsqynfwx + +rpzsjhlaefxbvmodunigw +pxwgvfdlonieamhbsrju + +prgk +hepxkrvgi +kprg + +esfjanprvxzugcqdyowimhl +ktihxpnvwzogrclysbqadme + +cdykos +disycok +kdysloc + +chgzpxym +xhpgmczy +ghcyzpxm +hcpxyzgm +gpyxzchm + +pvkzy +pvgkxy +pyquvfcl +ywdvmhprena +cyvupq + +tyobwsehjrfunziqmg +cwujptqkreodvmfa + +r +nb +c +dktyap +sn + +maqevwtijbnlp +vrlkjawbmqnipt + +phizanuolbfgrt +bzipnauglforht +oignblthfapzur + +fd +d +d +d +d + +razemjtpsxgiq +peqmsarxgjwizt +ixjtzeargmpsq +itqermazxsjgp +ztmiqsxajerpg + +i +p +pu + +itkxhb +buxki +aicksxdpb + +qpczutx +gczjuhtq + +txqncbg +qtogvjcb +gcqrbt +bcaqrtg + +eqtwvkrnhusy +njtsqhwru + +ua +akcq +ai + +mgdcoxrnwvletpkbusihy +bdmslhpkgonvreiucyxtw + +lfoazxqyw +yrpbmnkceu + +j +j + +uwrzpvaxindebtloch +izvoxwbpuanrchet +tmrakvncphwiezobxu +pwruaixbhctvzedlon +rsebuowhxigtnjpcvqaz + +msnvf +ajx + +vgahuqimkblfyjexotp +hygaiepjlvuksmxoqfbt +ytlhbfmkoxujgedpvaiq + +xcdv +xgv +vxlu + +km +m +mfk +cyqwm + +rawphceqti +ylgmjconzbvsu + +lwy +ywl +yldw + +cmgsiykfd +icmgksdyf +mcdfsgiky +imksdcfogy + +avptxrnwubqi +vunbxwldt +vzkocbwn + +svhkjpfmzudeyc +hpmugixtezkavjd +zeqpxvmhdukj + +tw +ztw +wt + +bwfjxu +tjfvwub +ubnojfw + +ktnipjyeq +tkiwyb + +wmhqjc +hjwmcq +mhqjwc +hmjwqc + +hkzjgb +hgbjk +ghbjkz +kgxfbjyh + +ofwinqzbmkjgdxv +clbfwtozkiaugdvjnpqeh + +qmdrsbjeptgkw +wpnqkregtd +kfqewhdlgirzp + +sgqkuptxlvic +jkpgsxbt + +mvfik +xnljsuek +kibrpzfh +bkmcwr + +qzyv +yvmzq +qvz +zqvg + +vxjbaeirnylzhocpkqwstd +qvsuyerpthjwbcaizlxodkn +ozsaxtledcyvwpkjngbrihq +csvirwzhjoxlbnkqdtyape + +b +coxe +u + +kexawtfpg +guwfptxake +xpkgfteaw + +tgnr +nrgt +grnt + +kludgpxi +gkdxrp + +aibgqykuvs +bzgausdvwciq +qvbsgniua +iusqjvabg +bpvusajiyqg + +w +xu +kbu + +u +u +u +u +uoei + +zogb +ob +ob +boe +sbo + +cs +zm + +oleqm +oilq +qmlo + +woxzdcshnl +ldoshwxp + +ntkbjxpqwhlmecsrdga +qpebarkoizywsxmlfgdju + +mxk +yxm +kmx +xym +xzvmb + +nl +no +on +n +n + +fqlyezxtjgoa +hyeoatksq + +khtj +asmu +thkn + +t +z +z +m +z + +tyz +tyz + +gkmdubiacx +imjkudgcx +gdumcxik +gmuckidx + +iysarmnfphgctzj +hngozfpmstayj +yaskgvuqmdzhfnpbexjl + +edwvrzuloqfsctim +wromkzfdaicelvqnt +wokdiecqtvrsnmuf +kemtocfqvrdisw +owjdtqicxyfvgremhp + +ihdrnakm +andmkri + +ojetcq +aubtkl + +qsyfchx +hykvzfg +xye +rlwioyj + +odzqbvmlrfkjgye +vwlojbqdanrxtsyk +dohigvpjqyblkr +ulocbvjkyidqrp + +ketyogpsabhzwxiqfl +jixcwguhefqzkmbdolatn + +pko +kpo +pko + +wm +wm +mps +m +mw + +nghwmdf +hmfdgw +hfmgdjw +fmhvgdjw +dgwjfmh + +umnkpzedga +gpokqdzmeun +mhctzkgnuebdp +jpszkgeyunfdrxm + +bfcdysziphquxvmjagen +zfduabihvnqgpjsymcxe +nzabmuxyvijqfcedgpsh +hpsxnacvfdqguijbtzmye +cbsevkuanpdhmqifzjxyg + +hrjlbfwq +rfjwqbhl +fojqbkhlm +qfhjbls +qhlfcwjbu + +vfjicx +vjicfx +fcxjiv + +j +uc +n +q +q + +bmrvzsa +eaoqubzxmrnf + +yjnvze +najyvtze +zynvej + +wf +fb + +bejpn +bpnje + +o +yc + +jwhsena +uw +utwn +nwc +xmvw + +htsqagwko +lydzerxjunvifpm + +drujlenvswomythgkp +xaeypwrhsikbtucdlgn +azylhrdkeftsnuwigcqp + +opzvefmcgst +epscmzofgtv +ozmtgevfcps +zgotvspmfce +tspzfgecovm + +uvsi +epgju + +srbpygw +sdwoyebv + +wiacz +aiwzc +azicw +wczxapi + +vria +rcvdah + +qvleubajx +buvqxealyj + +vegtzmpl +gslnxzv +dowlkygvf +gmvel +pgvzsl + +mp +k +k +ubo +m + +jdymxhqeszrfgo +iheugkxmrwsbynjadfvoz +oyjrtsgzmfepxhd +hdxlzryejmgcosf + +pndcs +cwdsp + +oceishrgqp +tsgphoje +zenpkougasl +hgorxeywsfpb + +pzejodvy +vyzdejop +ejdvyzpo +yozvjped + +mdjzibuqrvkecl +qcaejodxlgbvuiprzh +ajyzdvrgeqbiclu +ncslezwfutrvqjib + +n +o +s + +wnqftxaurblhpikmzjv +qxfyiwjnmhtbkpauzrl +cirtbjmpeafkudnhzwlqgx +ztrxfauslbjmqpwnihk + +xfrtleh +hkxzi +byhxj + +vloiwkeadbcqrgx +obldgwaymxjvqier + +dryhtpoawvi +inpaowhrtydbv +hyotdwvrip +vioytprwdh +qywoprdhgtvil + +vszuj +jo +mjpihxr + +y +e +a +a +a + +npju +jun +ejnuv +nuj + +fgpcswhmdixy +crxhiwkdmotpgnfysb +wgihuydcpmfxs + +acesgkpv +raosgpvc + +pcorf +pfcrol + +zsympkbl +psykzlamb +zylskpmb +yzlpksmb +yblzsmpk + +lrdgspoxqaywvjiu +swdjupvrixelgaq +xublsdjqyrpgvaiowe +jpgqmxalrsdvfuiw + +pxlfi +bdvsk +ne +eirhgn + +qsvrmp +aqgzys + +chpukadomensgfj +jlnepdzuok +dewnpjquktriob + +aqshxtgruwkzncoi +iwtxlnbzakoqcdu +qzxadiolmtunecjpwk + +vzasxecfdigkbj +acsdvefzijbk +yibvdcfujzasnke +fozvndsbcjkaie + +mjbdpsh +mbdypxj +mbypdj +cpmjfbd + +cjdvlgzk + +pwuskgtc +cktwugp + +stxgacjdnbezwoukhivlypr +zpieoljbaknyguswfxtcvhrd + +frqpswzajgk +tusgjqkapzfw +gazwfskqjrp + +yuqsj +hrwmgvkial +hernctopbzdm + +xudtjlakfqhepzm +kflzpjexdqamtuh +qtlmbdauprfovyhkexnzj +zkathjldumepfxq + +ltezfiwcsnxyg +zckxfelsgtywni + +hmlxoknayqwgtfs +hgfaqtlsxowmynk +salxqwnyfoghmkt +lfqyantmwgokdhxs + +hpcduo +odpcuh +dmhoupc + +vijeghudcaspxomwkyrzblt +kzrhpsabulxycodtemiwvqgj + +ydrcxhkwbenqj +xnkyqedhbcj +jbexydknqch + +jlqkisftwdahnpemcrb +wstfplujibdkcyqe +cfjiqlpyszutdwebk + +vhtumyxriocj +vcjyhrtmiuxo +xroyjemuictvh + +qlxymefuiwvbrgn +wqvlfixmngyrube +gmfnbewyvixurlzq +flwuxrmnvegyibq +vrqfbixlmnwjygcue + +znxadjwcqsihbfovupt +tsdjqraoxfuegcinv + +rjtsfzxhigdamkcqpb +enmawxiyuorclfsqv + +lagipb +sgapwni +vgmapix +pacligt +pirga + +jsnbm +wxlioajqbytr +vpghbj +mnkdjbu + +dvb +bdv +vdbh + +cmfkubsnwhvydl +kodmluyvbnscwf +ncuywdmlvkbsf + +wxzt +x +t +ga + +wyidutgqxcan +ktjcqgdy +yrtdpcqjg + +pfbdrmwtgv +vldcrbxwgfe +rbhpvfzgdmnw +vaorgqfdpbzw + +tdsyjbpkzwx +slnead +edqhrnsgia + +a +a +a +n + +zprvfqcgi +pvyfzgqbidl +ewxufqzi + +tsbaq +qatlsk +qtasf + +ewmsx +igawsxrm +wsxme +wmsxe +cmwzsx + +wovxhanyftglrkzmiscu +iufrvxzcyqjgebthmso + +em +k +k +k + +aerg +fedapg +ega +agme + +wroghldeqtnc +cgtnrdoweqlh +nogdrthcezlpqw +chdolwtgrneq +gowehqndctrl + +lrbvsgexaqptnfwjmcdhouk +rnjsuegkbxmwpcqflaohvt +gswokutqamfhxnrljevcbp +rufgtqlonsawmvjhbkcpxe +ubkcaolmvjsxhtenwfqrpg + +wexgind +nediwxg +dgeiwvxn + +pejqdczw +zwjepc +vjemowcz + +abzdgfhko +trvsjuqmx + +wnxjbcqogyfdzhitapku +ugczsntijqkwfyab +knjbwagltcyiuerfqz +fzwctuyigkajnbqs +rktyifgajecnzwqbsu + +jyidghp +jgyidph +dgjpiyh +pjiyhgd + +vdwrlxqbphykjmuzftcio +tmxifqbpyazncesrkouj + +fwildrejtbhzsknxpqyo +jyusnvtlowefhzdikgxrq +kotzwhsafniljdxeqyr +sxikerjqyaolzfhdnwgt +mkdnogzqwlrjxesiytfh + +bivzsuthgrpd +nphkubrq +wabukmhrpj + +nplkgxfhsaomrjuze +uhskaxfrnpmglzoj +jgkarmzonlsfphux + +mdhxznwoelckfgay +pxmbeohgnwyfacklz +agnzfexclwokymhb +mclgxfeoywkhnaz +enxjkczfomhayglw + +o +o +o +g +o + +pymldua +lymudap +malkyupd + +mhnx +xmnh +jhnmlx + +zmniyxufgbtjcvpk +gkzxcvbmtipnfyju +cnzmptbixvyfjkgu + +fxdbvymtgqnrozw +pgrmznsvtkfwuxboqy +xfmzvygabltrwqno + +pkgi +pmikeag +gkivp +ipjkvtg +kgpui + +cygobhesdxvpiutlajknz +zinkjdbeyhstlvgxpucr +xudegivwzpkjbqtycshfnl +egixvjubncaklzphdyts + +flepqzvch +hclvpqdez +vlctxzyhqpe +vehqclzp + +rchxbltygzekmudo +ercgl +jnacwglre +sclreg +galercp + +gsbtcuih +ubisvegatphdc +vtfiecsugxbdh +scrtibhugoq + +baxqpi +axrjiqbp +ixbpaq +qpbxfwai + +ogpedvhwuzbc +ltsfr +mjriax +rqkty + +s +s +s +s +s + +tuabpkqxvroyhjz +ptksvbyajurqoz + +aiz +ikza +izdva +azi +iza + +czpng +gpc +gumck +cgu +yxrsgetch + +ufz +xoicgj + +abt +erabt +gzbntw +tb + +ndvfc +xetilhb + +hvfxeqlwdkpozuabmijcygstnr +thfylcdbwnexovmzriqjasgkpu + +qodgh +ojqhdg +odmchltqeugr +qohgdp + +lyutwgix +whtcrdjnsvfe + +eugizoflxqjmrsdn +sdjofexzmigruqln +nqzrfimxsdjgoelu +rjfqosdglumxeizn +gdrmsjhoxeqfznlui + +wboy +wyob +obwy +woyb + +xofzdbqlernhvjip +dbmwjoflxipr +xriplfjobd + +lb +b +yb +b +bey + +jsuehvblciq +jivushbcqe + +jpdisezohtu +tjihdpozuse +dpuhztoiejs +uestoipdjhz +hejopstuzid + +ahqwolftrvz +rlckoaeumtjywsghbqxz + +elbjcwqpyfsrh +zgkixucotmnylavd + +ovwpgedlfajy +djaoulgepyvwi + +vxanb +kanxhv +uvxan +vnax +xnav + +vqhknrjeua +dvrjcqae +kqjvcrea +vobalfjpxgqr + +mfcaysjvl +iypgxdwzokbu +smy + +nsxhqofuk +qkjfox +xqwokfy +dkqfoxv + +ncprkyix +ijxykrnc +nykxirc +nkrcyxi + +vqylnfdcsgxu +cunqdlafgsyvx +cdfnxvjlguyrsi + +sxrklj +etma + +xpdgmf +dahxmpg +wernogsvlt +xpgqm +qgkb + +avcmxptndkowj +aoduwpjktcnvx +xwtcovnpakjd +wzdvcpokjxnast + +twobeiakfrmpgjdyqsn +owmfryguxadcnebkivhl + +hevgwtocbdkz +hbkoavxzdcetw +oesktmwdvyz + +anmzwy +mknwazy + +aendgmvjolfzy +jgfnbymvoeadczl +ybdmpofnralgzjve +naolymjwvzedfg +goxnvmfalsejyzd + +qrcbadgel +hoseabdjrg + +muar +trwum +umrw +umt +nmgsfucjlyipbk + +iolqwxkjzcpsg +xjkbfplzqin + +nsiuqctvbf +ycwqgokibud + +wi +srnvx +asrx +ax +s + +nolmhubsafxjgc +wancbvsjmqkxzglu + +lr +lr +lr +lr +hlr + +hwcjl +anbqmskw +owiyl + +sk +sk +ks +sk +sk + +gishwxe +plfkxmbyhzjwvtoad +nuehwcx +rhwxq + +xemwhdsozfqtvajcnk +osjueztdcxqhrvfnmwk +kncxosjfwdhrtzmqve + +av +x +u +g + +sehzwjqgfxicamkrnbp +wznemrfajqxhpkcisgb + +whq +h +h +h +h + +pwhltnxiq +xhpiwnlqt +tipqwnxlh +wixtqhnpl +pwqxintlh + +dqmxibuv +vdxqiubj +vnadfxquib +uixqbdv +qxvdibu + +qtzgodpv +zgfkvqtdp +ztdqvmbpgo +tpdvziqg + +syml +mys + +htuseaxzln +uxlnzatseh +sznaxutleh +thxzealsnu +ltzuahxnse + +bh +bu +bu +onwb + +xidlsobaqgh +rxdgouqslbach +bxvsqoglhad +qepgdkxowblajhsnz + +vizqmhner +zynmvedi +szbmnewvir +nmfvtpwize + +csazebwqdmtrolvxinphf +ynfjamsqlcgpwohu + +rfld +dlf +ivklhozd + +piyxdelnma +eclroyapnbvudfmtsx +yimadzlpexnq +xkgedyqlhmpan +yxnhalepmd + +mwyskbjad +opmdbhskcjxyuwe +fsrjbywgdnmvikz +sdymbqtkwilj + +bipr +kwbjotea +b + +ugokxmcabzp +wslrjept +plfviewy + +owvkzbdijtnpfhl +eondwjtgkbli + +hgdjzupisnwmvtxoecyk +gyopdewzvtjxckmisnh +dpmtvocszigjnwkhey +wdphmnelgqjtksfciozvy + +wludkmqjnpxvyigboasrc +fsjolrybcgqivwxpudmkan +dowxgcirmjapsvuylnqkb +baulnkrcqgijvsyodpxwm + +gbxedknljayfhcvu +xztjkfeblgiqvydau +gvlksybpemdxjawiuf + +pds +ldfs +shg +sa + +oyhipj +pdohywb +paqlhou +omrgyphtwd + +puexjovza +bgvcejrisy +wrejvq + +swzkvxtafnqyi +wksiqxzvfnyta + +buxsqlordam +ixslbpnfvtukahze + +zvnbreaqmwsodcy +vmwsadyobqznrec +ebvmawdrzcnqsyo +cbmwoaynszdvqer + +vxdzibpaw +avsfegby +akvbc +zabvu + +dhlxsy +ldyxsw +lsayzx +yxsjlh + +xtbe +plj + +n +m +owx + +ali +md + +jmi +jl +jac +lj +jlc + +whjagdblr +wdhrgbajl +jahbewndlrfpg +warljgdvbh +grsldajwbh + +ubi +dwb +lnb +pbx + +nmsjacwzqdh +pbfkugeytoi +rkvxl + +vdx +bndx +xvd + +nezmhlw +exzmwgslhuon +wtemnqhpliz +fnedlbkvwmhzg + +zcvoarqi +uqg +thqg + +qedaghsxln +csxldqen +denxhyqls + +blegpfuaznrdhoj +zghslinmvxejroaqp + +yjev +eyvj + +xhnqtvlaewfgupyrz +zghfpnxtyelvaqurw + +bsno +dovpt +glfjzw +hxmfc +iyrkqu + +ta +l +m +brq + +ezchvnpy +jphbyvcrze +vychzep +hytcpevz + +wurmizf +dyqlwmuvi +uimbw +euibwm +zmiuwhae + +bdngyolcxipva +gswmucjby + +xzrkwep +njblugmhqvrsizw + +dijwksuhyrefmbtzp +wsrtempdbijykuzc +bewszdumjptcyrki +dmbjkyzwpcesruti + +utameknglfxci +ohmnetvqjsawbik + +ves +s +qbpkiywt +gfe + +eogztnu +monutzeg + +fjqvucdoz +cfzvuyodqn + +j +t +j +j + +xwcpkudjagnzmto +czjgdnwmtkxua +xjnkcwglzdutma + +g +fisteknohd +xmg +uxrqz + +y +y +y +y +y + +yebaxitskm +txljeyaimok + +wytxl +w +wj +w +w + +y +ym +y +y +y + +tuqacpofz +afzuotp +autzfpgdro +oufzatp +asnzfuotp + +fmxcdtakjqsolvnwzpre +cwslxozmedvqprakft +zcepkrqaowsxdmlfvt +adkrcltzfwqomxepvs +cftdkzsuvxwroelapmq + +vnukwf +wfu +wuvf +uqfw +fucw + +ucezxlv +xcluzev +ecuizvxl +veluxcz +zexcvlu + +cfdzeomh +hzfmde +lnrmhzifd +mzfdh + +imklvjabtqdxcw +dqtmiwjflcavkx +tldzxkqnmwjcsavi +lrvfgtdcjxakpmiwq + +hfgvjpminkouyscxdwzle +fimyuswanovkdgzelcjxthp +cyhigexozldsvknfumwjp + +obgv +bvo +orgvb +xpvsboau +bov + +tidn +ljs +rly +oljsrah + +hlpkbqo +oklbp + +upsfvhjeqiolra +pfjovuahelqsrim +yqanieuglpvojsrhf + +rzlsoiwnmfjxac +ajvextygdhwum +jqmpaxwt +mygwbjpeaxdk + +dnkilgqrscye +khlzdxpbwo +lgkrdm +lvdtgk +sfdklmtj + +u +u + +kctfengbsqdjy +jtsehoqfbgix +aweqmugpzr + +gfkxci +iocxfu +mdxneihrfqcj +csiopxf +uyitxfoc + +w +q +vjgesf +zkpxc +n + +aiqlfegkx +rboptwvjsnu + +ysamgbzc +bczsga +daubcszg + +dufvmajroptly +hsdwlyp + +ogjwnmhktvubi +uigwtjkb +kqwiuetz + +fmdwnscru +yli + +cnjr +rcjn +jncxr +jcrn +rjnc + +tjzqs +jblstz + +rmxcinhbeql +mrfbtlenquhxij + +n +g +bwh +rju + +mdol +mdol +dmol +lomd +modl + +apzodfktx +zjkopdtxfa +oxjfakptzd +owdkacxupzyft +aofkzpdtx + +jmibuxvgcodkrewfnasz +fsrzunjcbxdmweakigvo +axkedgfubjczvowinmrs +gruxwiscodkavjefmbzn + +mqpubxrzhktcfj +hotqnigsavzeylmd + +ntmkpjuzcilgd +hpdugjkqltzxnmci + +dxwbfonuvjaskyeqzipctrlh +wkcxydvhiaurbqepotljnzsf +tafgehdurxybzwpkojvlscnqi + +af +f +f +f + +povwrfhklm +azvixotjbegsy +svjnocd + +ysfeukcdrbxnl +scpyrextbwokdufn +skcudxneqryfbl + +hmwbzcodtijqavxnsyl +vlpcaqyjsfiortmhz +hvmizletopsjyaqc +vmqajlgostizyhc +kvcoqmajlyzhist + +x +x +x +x +x + From 435fe19dcc8689d21627ced40481c62b4672047e Mon Sep 17 00:00:00 2001 From: Teo-CD Date: Thu, 17 Dec 2020 23:01:52 +0100 Subject: [PATCH 3/3] Day 7 of 2020 done in Python --- 2020/Day 7/Solution.py | 105 ++++++++ 2020/Day 7/input.txt | 595 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 700 insertions(+) create mode 100644 2020/Day 7/Solution.py create mode 100644 2020/Day 7/input.txt diff --git a/2020/Day 7/Solution.py b/2020/Day 7/Solution.py new file mode 100644 index 0000000..e76cfa6 --- /dev/null +++ b/2020/Day 7/Solution.py @@ -0,0 +1,105 @@ +import re + +bag_re = re.compile(r'(?:([a-z\s]+) bags contain)?(?:\s?([0-9]) ([a-z\s]+)\sbags?[,.])') + +input_file = "input.txt" + + +def find_bags_containing_bag(search_bag="shiny gold"): + # Stores the bag colors that can store the bag in the key + bag_relations = {} + + with open(input_file) as rules: + line = rules.readline() + + while line and line != "\n": + match = bag_re.findall(line) + + if not match: + line = rules.readline() + continue + + parent_bag = match[0][0] + + for sub_match in match: + + if sub_match[2] in bag_relations and parent_bag not in bag_relations[sub_match[2]]: + bag_relations[sub_match[2]].append(parent_bag) + else: + bag_relations[sub_match[2]] = [parent_bag] + + line = rules.readline() + + explored_bags = [] + bags_to_explore = [search_bag] + + usable_bags = 0 + + while len(bags_to_explore) > 0: + current_exploration = bags_to_explore.pop(0) + explored_bags.append(current_exploration) + + if current_exploration not in bag_relations: + continue + + for bag in bag_relations[current_exploration]: + if bag not in explored_bags and bag not in bags_to_explore: + usable_bags += 1 + bags_to_explore.append(bag) + + print(f"The number of bags that can contain a {search_bag} bag is {usable_bags}") + + +def count_bags_contained_in_bag(search_bag="shiny gold"): + # Stores the number of bags a bag directly contains + bag_counts = {} + # Stores the bags contained and how many of them + bags_contained = {} + + with open(input_file) as rules: + line = rules.readline() + + while line and line != "\n": + match = bag_re.findall(line) + + if not match: + line = rules.readline() + continue + + parent_bag = match[0][0] + + bags_contained[parent_bag] = [] + bag_counts[parent_bag] = 0 + + for sub_match in match: + bag_counts[parent_bag] += int(sub_match[1]) + bags_contained[parent_bag].append((sub_match[2], int(sub_match[1]))) + + line = rules.readline() + + explored_bags = [] + bags_to_explore = [(search_bag, 1)] + + total_bags = 0 + + # For each bag, fetch the total amount of bag it contains and multiply it by the number of times + # this bag has been counted. Then, add the contained bag to the list of bags to count while keeping track of + # the multiplier. + # For ex. : a bag contains two blue bags. The blue bags are added with a multiplier of two. + # The blue bags contain each three red bags. Thus, we count six red bags and add them with a multiplier of six. + while len(bags_to_explore) > 0: + current_exploration = bags_to_explore.pop(0) + explored_bags.append(current_exploration) + + if current_exploration[0] not in bag_counts: + continue + + # Add the number of bags contained, multiplied by the number of times this has appeared in this "bag descent" + total_bags += bag_counts[current_exploration[0]]*current_exploration[1] + + for bag in bags_contained[current_exploration[0]]: + # Keep track of the number of bags that appear in total by multiplying the number of bags + # by the number of times the current bag appears in this "bag descent" + bags_to_explore.append((bag[0], current_exploration[1]*bag[1])) + + print(f"The total number of bags a {search_bag} contains {total_bags}") diff --git a/2020/Day 7/input.txt b/2020/Day 7/input.txt new file mode 100644 index 0000000..414ec7b --- /dev/null +++ b/2020/Day 7/input.txt @@ -0,0 +1,595 @@ +muted coral bags contain 1 bright magenta bag, 1 dim aqua bag. +muted orange bags contain 2 bright red bags. +dim olive bags contain 2 dull silver bags, 4 posh blue bags. +dim white bags contain 4 shiny indigo bags, 4 posh tan bags, 3 faded blue bags. +dotted salmon bags contain 5 bright black bags, 3 bright purple bags, 5 bright olive bags. +faded purple bags contain 4 pale beige bags, 2 striped violet bags, 3 muted olive bags, 4 vibrant chartreuse bags. +dark maroon bags contain 1 muted chartreuse bag, 1 muted violet bag, 2 bright lime bags. +bright tomato bags contain 4 dark chartreuse bags, 2 striped blue bags, 2 drab magenta bags, 2 faded gray bags. +light orange bags contain 2 bright tomato bags, 5 muted olive bags, 1 mirrored green bag, 3 drab bronze bags. +posh cyan bags contain 5 pale blue bags, 5 mirrored bronze bags, 4 dim magenta bags. +pale lime bags contain 4 light violet bags, 4 dotted black bags, 3 pale chartreuse bags. +striped lavender bags contain 4 shiny yellow bags, 1 mirrored green bag, 1 light blue bag. +dull orange bags contain 1 shiny white bag, 3 clear crimson bags, 5 posh tan bags. +posh lavender bags contain 5 vibrant orange bags, 3 dim aqua bags. +light beige bags contain 5 dim silver bags, 2 bright teal bags, 3 dotted tomato bags. +drab lime bags contain 5 faded lavender bags, 3 muted violet bags, 1 muted coral bag. +faded lavender bags contain 5 wavy blue bags, 2 plaid aqua bags. +dull bronze bags contain 2 dark lavender bags, 1 dotted silver bag. +plaid lavender bags contain 1 drab red bag, 4 wavy lime bags, 2 shiny olive bags. +vibrant plum bags contain 4 clear indigo bags, 3 light bronze bags, 1 striped coral bag. +dull cyan bags contain 4 striped cyan bags, 5 bright magenta bags, 2 pale brown bags. +clear gold bags contain 4 faded black bags, 1 shiny chartreuse bag, 1 mirrored green bag. +dotted olive bags contain 5 striped cyan bags, 2 dark chartreuse bags, 1 bright aqua bag, 1 pale blue bag. +light cyan bags contain 1 mirrored green bag. +faded tan bags contain 2 dim teal bags, 4 wavy green bags. +dull olive bags contain 1 striped teal bag, 2 drab green bags, 2 light red bags. +plaid red bags contain 2 muted cyan bags. +faded coral bags contain 1 striped maroon bag. +light aqua bags contain 2 muted plum bags, 5 mirrored bronze bags, 4 striped coral bags, 1 posh violet bag. +bright aqua bags contain 2 pale coral bags, 4 mirrored bronze bags, 1 light gold bag, 2 plaid lime bags. +muted yellow bags contain 1 wavy blue bag, 5 drab violet bags, 3 wavy black bags, 2 bright teal bags. +vibrant yellow bags contain 4 dull silver bags, 4 dark tan bags, 2 drab magenta bags. +clear purple bags contain 1 posh bronze bag, 5 vibrant black bags, 3 bright bronze bags. +faded tomato bags contain 2 shiny turquoise bags, 5 vibrant yellow bags. +muted gold bags contain 1 vibrant purple bag, 5 clear aqua bags, 1 mirrored white bag. +drab magenta bags contain no other bags. +posh brown bags contain 5 muted plum bags, 5 mirrored aqua bags, 3 wavy chartreuse bags, 1 dull lavender bag. +bright red bags contain 3 drab violet bags, 3 clear blue bags. +striped red bags contain 4 vibrant orange bags, 2 vibrant turquoise bags. +dotted green bags contain 1 pale green bag, 2 posh teal bags, 1 muted blue bag, 2 clear tomato bags. +pale fuchsia bags contain 3 dim blue bags. +light plum bags contain 4 clear green bags, 3 clear crimson bags, 1 vibrant aqua bag, 5 faded gray bags. +dim violet bags contain 3 faded bronze bags, 5 dark turquoise bags. +wavy indigo bags contain 2 pale green bags, 2 clear tomato bags, 2 dotted black bags. +dark salmon bags contain 4 dotted silver bags. +plaid bronze bags contain 2 shiny magenta bags. +mirrored aqua bags contain 1 wavy green bag, 1 striped bronze bag, 4 light blue bags. +mirrored gray bags contain 2 clear beige bags. +wavy olive bags contain 3 dim brown bags, 5 clear green bags, 4 pale white bags. +vibrant magenta bags contain 3 striped cyan bags, 3 mirrored purple bags. +dotted teal bags contain 4 pale coral bags. +posh orange bags contain 1 wavy chartreuse bag, 2 mirrored orange bags, 5 dark white bags, 1 vibrant salmon bag. +dotted brown bags contain 5 drab silver bags, 5 bright tomato bags, 3 mirrored coral bags, 2 striped bronze bags. +posh purple bags contain 5 striped purple bags, 1 wavy beige bag, 3 clear beige bags. +dark bronze bags contain 5 posh white bags, 5 muted coral bags, 4 light blue bags. +plaid violet bags contain 5 dark fuchsia bags. +drab gray bags contain 5 plaid bronze bags, 4 dark salmon bags, 5 mirrored blue bags. +muted tan bags contain 1 striped olive bag, 5 vibrant magenta bags, 5 mirrored green bags. +wavy magenta bags contain 2 striped beige bags, 4 vibrant blue bags. +dull violet bags contain no other bags. +drab blue bags contain 1 drab red bag, 4 dark gray bags. +shiny crimson bags contain 1 shiny magenta bag, 5 shiny silver bags, 4 striped salmon bags, 5 light magenta bags. +muted teal bags contain 2 shiny teal bags, 5 dim fuchsia bags, 2 dim red bags. +dotted gold bags contain 2 clear red bags, 1 wavy beige bag. +dotted white bags contain 4 plaid chartreuse bags. +muted lavender bags contain 1 striped silver bag. +vibrant teal bags contain 1 faded blue bag. +striped tan bags contain 3 muted salmon bags, 4 striped purple bags, 3 striped silver bags. +light blue bags contain 2 drab violet bags. +dim salmon bags contain 1 pale chartreuse bag. +dark lavender bags contain 2 dull brown bags, 5 pale teal bags, 2 muted lime bags, 4 pale beige bags. +wavy beige bags contain 4 posh tan bags, 3 muted brown bags, 1 pale magenta bag, 5 muted magenta bags. +drab olive bags contain 1 striped indigo bag, 2 dull beige bags, 5 bright magenta bags. +pale cyan bags contain 2 bright olive bags. +dark blue bags contain 1 posh indigo bag, 2 bright lime bags. +dark chartreuse bags contain 3 muted brown bags, 3 light violet bags, 1 mirrored green bag. +dim bronze bags contain 1 muted plum bag, 5 pale red bags. +dotted fuchsia bags contain 3 drab violet bags. +posh fuchsia bags contain 1 mirrored maroon bag. +bright coral bags contain 2 vibrant gray bags, 2 drab aqua bags. +dark orange bags contain 2 bright salmon bags, 1 plaid cyan bag, 3 plaid beige bags. +dotted turquoise bags contain 4 wavy green bags, 1 plaid lavender bag, 1 dotted olive bag, 1 dark silver bag. +plaid salmon bags contain 3 faded plum bags, 4 dark teal bags, 2 wavy green bags. +clear cyan bags contain 3 dull tan bags, 2 shiny olive bags, 5 shiny brown bags. +posh tan bags contain 5 dim lime bags, 1 shiny indigo bag, 2 dark chartreuse bags. +muted violet bags contain 1 wavy blue bag, 1 dark silver bag. +dull indigo bags contain 3 posh plum bags, 5 shiny coral bags, 5 dull crimson bags. +mirrored violet bags contain 2 posh plum bags, 5 dark indigo bags. +pale tomato bags contain 1 bright tomato bag, 3 striped salmon bags, 1 posh silver bag. +shiny tomato bags contain 3 shiny coral bags, 5 striped orange bags, 1 posh bronze bag, 1 wavy silver bag. +dull silver bags contain 3 light violet bags, 2 dim white bags, 2 dull beige bags, 3 pale maroon bags. +dark gray bags contain 5 drab green bags, 5 mirrored green bags, 4 faded gray bags, 3 drab white bags. +wavy orange bags contain 1 light maroon bag, 3 shiny beige bags, 5 drab silver bags. +pale lavender bags contain 4 shiny white bags, 4 bright indigo bags, 5 shiny teal bags, 3 clear crimson bags. +pale chartreuse bags contain 3 dark lavender bags. +posh green bags contain 1 plaid plum bag, 3 drab maroon bags. +clear lavender bags contain 1 vibrant purple bag, 4 pale orange bags. +dim red bags contain 1 posh coral bag, 5 pale yellow bags, 5 plaid aqua bags, 3 striped bronze bags. +light violet bags contain no other bags. +dull aqua bags contain 3 posh bronze bags, 2 muted plum bags. +faded beige bags contain 5 vibrant orange bags, 5 clear magenta bags. +vibrant black bags contain 5 wavy orange bags. +faded silver bags contain 1 wavy olive bag. +dark brown bags contain 3 light indigo bags, 1 muted salmon bag. +mirrored green bags contain no other bags. +plaid tomato bags contain 1 faded gray bag, 3 striped teal bags, 2 dotted beige bags, 2 dark coral bags. +faded salmon bags contain 1 vibrant purple bag, 1 dark cyan bag, 3 muted maroon bags. +faded white bags contain 1 mirrored tan bag, 2 pale fuchsia bags, 3 wavy gray bags, 3 plaid maroon bags. +posh crimson bags contain 2 dull tan bags, 4 striped silver bags, 1 clear fuchsia bag. +striped silver bags contain 5 dull tan bags, 3 striped blue bags, 1 dark silver bag, 1 clear green bag. +dim green bags contain 1 striped coral bag, 3 plaid gray bags, 4 clear green bags, 3 drab indigo bags. +shiny gold bags contain 2 dark chartreuse bags, 2 bright silver bags, 1 striped bronze bag, 2 pale maroon bags. +wavy coral bags contain 1 clear magenta bag. +bright white bags contain 4 dim teal bags, 4 plaid violet bags, 5 dotted chartreuse bags. +dull lime bags contain 5 vibrant salmon bags, 1 wavy fuchsia bag. +dark red bags contain 2 mirrored gray bags, 5 drab tomato bags, 1 faded purple bag. +mirrored cyan bags contain 5 bright cyan bags. +dim blue bags contain 3 dull beige bags, 3 shiny white bags, 4 posh purple bags. +pale teal bags contain 3 striped tomato bags, 1 plaid plum bag, 5 mirrored green bags, 1 striped blue bag. +posh silver bags contain 1 light violet bag, 3 dull blue bags. +faded black bags contain 2 bright tomato bags, 1 striped teal bag, 1 dim maroon bag. +posh plum bags contain 5 faded gray bags. +striped beige bags contain 4 dotted fuchsia bags, 1 pale teal bag, 5 shiny cyan bags, 5 striped indigo bags. +striped indigo bags contain 4 muted olive bags, 1 dotted silver bag, 3 clear fuchsia bags, 3 dull orange bags. +dull black bags contain 4 dark gold bags, 4 dark tan bags, 2 pale orange bags, 2 light gold bags. +dark yellow bags contain 3 posh teal bags. +vibrant gold bags contain 3 dull cyan bags, 1 mirrored maroon bag. +dull gray bags contain 5 plaid plum bags, 4 mirrored aqua bags. +muted chartreuse bags contain 4 dull blue bags, 1 dull tan bag, 2 light green bags, 4 mirrored green bags. +dim maroon bags contain 1 striped teal bag. +bright orange bags contain 3 muted maroon bags, 5 muted tomato bags, 4 striped maroon bags, 1 faded gray bag. +faded orange bags contain 3 posh lime bags, 1 clear purple bag, 4 dotted magenta bags. +dotted red bags contain 4 plaid tan bags, 1 dull tan bag, 2 posh beige bags, 5 bright turquoise bags. +dotted orange bags contain 4 bright black bags. +wavy plum bags contain 3 dull plum bags, 3 dotted cyan bags. +clear turquoise bags contain 2 striped blue bags, 4 wavy plum bags, 2 dark olive bags, 2 striped maroon bags. +wavy chartreuse bags contain 3 shiny yellow bags. +muted turquoise bags contain 2 plaid indigo bags. +dotted bronze bags contain 2 pale red bags, 3 dull lavender bags, 4 striped crimson bags. +clear black bags contain 3 striped plum bags, 3 plaid violet bags, 3 shiny chartreuse bags, 4 bright tomato bags. +shiny brown bags contain 5 posh lime bags, 1 posh bronze bag, 4 wavy brown bags. +posh bronze bags contain 1 mirrored gray bag, 2 bright plum bags, 5 dark gold bags. +dark crimson bags contain 4 wavy orange bags, 4 wavy green bags, 1 muted brown bag, 2 dotted purple bags. +faded red bags contain 2 plaid violet bags, 5 dull orange bags, 1 mirrored tomato bag, 3 dim aqua bags. +drab purple bags contain 1 posh violet bag, 1 dotted cyan bag, 3 muted magenta bags, 2 wavy black bags. +dotted beige bags contain 4 shiny green bags, 5 striped maroon bags. +dim magenta bags contain 1 dull violet bag, 3 striped tomato bags. +striped white bags contain 4 dim maroon bags. +vibrant tan bags contain 1 bright lime bag, 3 faded black bags, 3 bright olive bags. +bright olive bags contain 5 drab orange bags, 2 drab black bags, 4 muted salmon bags. +dark white bags contain 2 mirrored beige bags, 1 bright teal bag, 2 posh beige bags. +pale gold bags contain 5 dark orange bags. +vibrant indigo bags contain 1 muted purple bag. +faded turquoise bags contain 5 pale indigo bags. +faded bronze bags contain 1 clear magenta bag, 4 faded gold bags. +shiny gray bags contain 3 striped crimson bags, 2 dim brown bags, 3 drab red bags. +mirrored magenta bags contain 3 wavy maroon bags, 2 pale beige bags. +muted lime bags contain 4 clear beige bags, 5 vibrant chartreuse bags, 1 dark turquoise bag, 5 dim crimson bags. +vibrant crimson bags contain 1 dotted fuchsia bag, 1 pale tomato bag, 4 dark turquoise bags. +vibrant cyan bags contain 4 mirrored brown bags, 3 wavy green bags. +pale orange bags contain 1 pale gray bag, 2 wavy green bags, 5 plaid plum bags. +vibrant maroon bags contain 3 bright red bags. +light bronze bags contain 1 dull blue bag, 2 posh crimson bags, 5 drab magenta bags. +dim beige bags contain 4 shiny yellow bags, 4 muted lavender bags. +pale black bags contain 5 mirrored fuchsia bags, 4 striped salmon bags, 2 dark turquoise bags, 4 dotted orange bags. +dark turquoise bags contain 2 striped purple bags, 5 bright teal bags. +drab crimson bags contain 1 faded turquoise bag, 4 vibrant crimson bags. +pale maroon bags contain 3 dull violet bags. +bright salmon bags contain 5 pale lime bags, 4 bright cyan bags. +dull beige bags contain 3 striped tomato bags, 3 dotted black bags. +clear fuchsia bags contain 4 shiny white bags, 1 mirrored fuchsia bag, 4 drab violet bags, 1 pale magenta bag. +wavy gold bags contain 1 vibrant black bag, 2 dotted indigo bags, 5 faded silver bags, 1 muted cyan bag. +plaid maroon bags contain 3 bright silver bags, 5 mirrored coral bags. +dim cyan bags contain 3 muted white bags, 2 wavy maroon bags. +wavy purple bags contain 4 bright teal bags, 4 dull turquoise bags, 2 vibrant aqua bags. +muted cyan bags contain 3 muted olive bags, 3 dim brown bags, 4 striped indigo bags. +striped olive bags contain 2 clear blue bags, 2 plaid indigo bags, 3 faded blue bags, 3 bright tomato bags. +plaid orange bags contain 2 bright indigo bags, 2 vibrant blue bags, 5 light gray bags, 3 faded tomato bags. +striped plum bags contain 5 posh gold bags, 5 bright bronze bags, 2 clear gold bags, 2 dark lime bags. +dim crimson bags contain 4 posh tan bags. +drab aqua bags contain 3 mirrored lime bags, 4 pale salmon bags, 2 wavy coral bags, 4 light brown bags. +bright silver bags contain 4 muted salmon bags, 2 striped salmon bags, 5 shiny turquoise bags. +shiny beige bags contain 2 light plum bags, 4 dim maroon bags, 3 pale brown bags, 1 pale maroon bag. +shiny tan bags contain 4 posh chartreuse bags, 3 dim tan bags, 2 pale green bags, 5 light tomato bags. +wavy silver bags contain 3 drab magenta bags. +light brown bags contain 5 dim fuchsia bags, 3 drab brown bags, 4 posh bronze bags, 4 bright cyan bags. +striped green bags contain 5 bright bronze bags, 1 striped gray bag, 4 wavy fuchsia bags, 2 striped indigo bags. +faded brown bags contain 3 dim brown bags. +clear maroon bags contain 2 mirrored magenta bags, 3 light cyan bags. +dim black bags contain 3 dull turquoise bags. +muted bronze bags contain 3 bright green bags. +drab green bags contain 4 posh gold bags. +muted magenta bags contain 5 muted brown bags, 2 dark chartreuse bags, 5 pale magenta bags. +light chartreuse bags contain 5 dim lime bags, 1 faded blue bag, 5 striped salmon bags. +dull teal bags contain 3 shiny teal bags. +faded blue bags contain 5 shiny indigo bags, 5 drab magenta bags, 1 dim lime bag, 5 striped teal bags. +pale red bags contain 1 dull brown bag, 1 bright tomato bag. +dim indigo bags contain 2 vibrant white bags. +light gold bags contain 5 shiny gold bags. +clear green bags contain 2 muted brown bags, 4 mirrored orange bags. +posh red bags contain 1 striped salmon bag, 4 posh silver bags, 1 pale blue bag. +dull coral bags contain 2 pale bronze bags, 3 shiny lime bags, 5 muted chartreuse bags. +dotted plum bags contain 4 plaid fuchsia bags, 1 mirrored coral bag, 4 clear beige bags, 4 bright gray bags. +shiny black bags contain 5 dotted indigo bags. +drab white bags contain 5 wavy lime bags, 1 posh bronze bag, 3 striped crimson bags. +light fuchsia bags contain 3 striped maroon bags, 3 muted coral bags, 3 light green bags. +dotted tan bags contain 1 wavy aqua bag, 3 dull turquoise bags. +dark tomato bags contain 4 dull violet bags, 4 shiny gold bags, 2 clear fuchsia bags, 5 striped teal bags. +posh yellow bags contain 1 dotted brown bag, 5 mirrored aqua bags. +dark silver bags contain 3 striped blue bags, 3 faded gray bags. +clear chartreuse bags contain 2 faded green bags, 4 vibrant lavender bags, 5 faded lime bags, 5 plaid lavender bags. +dotted gray bags contain 3 drab orange bags. +vibrant beige bags contain 2 bright olive bags, 2 plaid gold bags, 3 drab lime bags. +light lime bags contain 1 bright teal bag, 1 shiny cyan bag. +dark aqua bags contain 4 striped silver bags, 1 vibrant bronze bag, 2 plaid orange bags. +shiny plum bags contain 3 bright tomato bags, 2 clear crimson bags, 2 dull violet bags, 2 posh bronze bags. +posh gray bags contain 4 pale maroon bags, 4 plaid gold bags, 3 bright red bags. +dark olive bags contain 4 pale aqua bags, 4 bright brown bags, 2 dotted gray bags. +dim tan bags contain 5 mirrored orange bags, 5 pale magenta bags, 3 striped teal bags. +drab chartreuse bags contain 3 posh olive bags. +clear lime bags contain 1 vibrant gold bag, 1 faded beige bag, 2 dark lime bags, 1 faded gold bag. +pale plum bags contain 5 dim lavender bags, 3 dim turquoise bags, 5 muted aqua bags, 4 bright maroon bags. +mirrored lime bags contain 4 dim brown bags, 2 muted tomato bags. +wavy violet bags contain 3 mirrored chartreuse bags, 5 wavy gold bags, 1 faded gray bag, 2 dim maroon bags. +posh coral bags contain 5 bright turquoise bags, 2 dark fuchsia bags, 4 light crimson bags. +shiny olive bags contain 2 shiny coral bags, 2 posh bronze bags. +faded yellow bags contain 5 striped black bags, 1 dotted black bag. +dotted chartreuse bags contain 3 shiny maroon bags, 2 pale magenta bags, 5 wavy beige bags, 5 dim silver bags. +dotted lavender bags contain 5 muted silver bags, 2 striped purple bags. +posh olive bags contain 5 dotted yellow bags, 1 light salmon bag. +shiny magenta bags contain 1 striped yellow bag, 1 dotted yellow bag, 1 bright teal bag, 3 striped tan bags. +clear red bags contain 5 shiny teal bags. +posh black bags contain 1 shiny lime bag, 1 shiny salmon bag. +dotted yellow bags contain 3 dull gold bags, 3 dotted fuchsia bags, 1 shiny teal bag, 2 bright black bags. +drab salmon bags contain 5 plaid white bags, 4 dull lavender bags, 4 striped red bags, 1 posh bronze bag. +shiny white bags contain 4 striped tomato bags, 4 posh tan bags. +clear olive bags contain 2 bright plum bags, 1 clear green bag. +light tomato bags contain 5 dark purple bags. +wavy crimson bags contain 2 plaid plum bags, 1 vibrant tomato bag, 4 mirrored plum bags. +muted indigo bags contain 1 posh coral bag, 1 posh lavender bag, 1 muted coral bag, 4 faded lime bags. +mirrored coral bags contain 3 vibrant chartreuse bags, 5 muted magenta bags, 2 shiny salmon bags. +bright violet bags contain 2 dotted aqua bags, 3 dark yellow bags, 1 clear purple bag. +mirrored white bags contain 1 wavy chartreuse bag, 3 clear aqua bags, 3 bright tan bags. +mirrored orange bags contain no other bags. +drab violet bags contain 1 drab magenta bag, 4 striped purple bags. +pale white bags contain 1 muted maroon bag, 1 clear crimson bag, 3 dotted fuchsia bags, 3 clear bronze bags. +dull green bags contain 3 mirrored fuchsia bags, 4 mirrored purple bags, 2 dotted green bags. +pale tan bags contain 2 dark fuchsia bags, 5 shiny white bags, 4 bright red bags, 5 posh plum bags. +dull tan bags contain 5 clear blue bags, 1 shiny turquoise bag. +shiny turquoise bags contain 5 striped teal bags, 5 clear crimson bags, 4 dim lime bags, 2 faded gray bags. +shiny lime bags contain 1 plaid indigo bag, 1 dim lime bag, 5 dotted beige bags, 2 dotted indigo bags. +bright fuchsia bags contain 4 plaid chartreuse bags, 1 drab red bag. +wavy lavender bags contain 1 muted olive bag, 3 shiny tan bags, 5 posh tan bags, 4 bright green bags. +shiny violet bags contain 2 dull lime bags, 1 dotted crimson bag, 5 dark lime bags, 4 shiny salmon bags. +dotted maroon bags contain 1 vibrant crimson bag. +mirrored bronze bags contain 5 posh silver bags, 3 mirrored lime bags. +light green bags contain 1 pale indigo bag, 4 vibrant chartreuse bags, 1 dull beige bag, 5 pale aqua bags. +clear indigo bags contain 5 dull turquoise bags. +faded indigo bags contain 3 muted tomato bags, 2 dotted fuchsia bags, 4 striped silver bags. +shiny green bags contain 3 striped salmon bags, 4 posh gold bags. +muted crimson bags contain 4 dark indigo bags. +posh gold bags contain 4 mirrored fuchsia bags, 3 muted brown bags, 5 dim lime bags. +pale brown bags contain 3 striped teal bags, 2 bright magenta bags. +dark indigo bags contain 1 muted tomato bag. +light turquoise bags contain 2 vibrant turquoise bags, 2 bright silver bags. +shiny salmon bags contain 4 pale gray bags. +faded fuchsia bags contain 4 light chartreuse bags, 4 posh lime bags. +mirrored teal bags contain 4 dull orange bags, 1 muted turquoise bag, 2 vibrant aqua bags, 3 faded blue bags. +muted tomato bags contain 4 drab green bags, 3 pale coral bags, 5 bright green bags. +bright plum bags contain 4 drab magenta bags, 5 light violet bags. +striped brown bags contain 3 vibrant turquoise bags, 2 plaid crimson bags, 2 wavy gray bags. +muted white bags contain 5 posh white bags. +muted beige bags contain 3 shiny cyan bags, 4 dim brown bags, 3 clear blue bags. +dim coral bags contain 4 wavy fuchsia bags. +light indigo bags contain 2 faded bronze bags, 3 dim magenta bags. +dark black bags contain 5 faded fuchsia bags, 5 mirrored olive bags, 3 dotted fuchsia bags. +vibrant green bags contain 5 bright purple bags, 5 muted chartreuse bags. +plaid fuchsia bags contain 5 bright aqua bags, 2 shiny indigo bags. +light red bags contain 1 vibrant aqua bag. +light gray bags contain 2 bright maroon bags, 3 dim turquoise bags, 2 faded gold bags. +faded gold bags contain 3 dull tan bags, 2 dotted black bags. +striped lime bags contain 5 muted fuchsia bags, 3 bright tomato bags, 3 drab teal bags. +dim purple bags contain 4 drab lavender bags. +plaid aqua bags contain 4 shiny indigo bags, 2 pale teal bags, 3 clear crimson bags, 2 striped purple bags. +wavy fuchsia bags contain 4 shiny turquoise bags, 3 muted salmon bags. +bright lavender bags contain 4 light gold bags, 1 bright magenta bag. +striped tomato bags contain no other bags. +bright indigo bags contain 4 striped yellow bags, 2 clear crimson bags. +dull tomato bags contain 5 mirrored orange bags, 3 vibrant yellow bags. +striped violet bags contain 1 clear beige bag, 4 drab violet bags. +vibrant turquoise bags contain 4 light violet bags, 2 plaid gold bags. +dim aqua bags contain 1 bright teal bag, 1 wavy silver bag. +dim lavender bags contain 2 dull aqua bags, 1 plaid maroon bag, 1 light gray bag, 4 wavy maroon bags. +vibrant violet bags contain 3 posh gold bags, 3 shiny plum bags, 4 muted coral bags, 4 posh indigo bags. +shiny chartreuse bags contain 5 light violet bags, 5 plaid aqua bags. +dull brown bags contain 1 dull violet bag, 1 striped salmon bag, 1 wavy tan bag. +muted silver bags contain 4 dark red bags, 2 muted violet bags. +striped blue bags contain no other bags. +plaid silver bags contain 5 dotted red bags, 2 faded teal bags, 2 faded olive bags. +faded lime bags contain 3 vibrant chartreuse bags. +vibrant silver bags contain 3 pale violet bags, 3 dark purple bags. +clear tomato bags contain 3 clear salmon bags, 2 light blue bags, 2 striped yellow bags. +pale indigo bags contain 3 clear green bags. +dim turquoise bags contain 3 pale teal bags, 4 shiny white bags. +bright tan bags contain 3 dotted beige bags. +light tan bags contain 3 dark teal bags, 4 muted brown bags. +plaid white bags contain 3 clear white bags, 1 dotted gold bag, 1 striped beige bag, 3 mirrored lavender bags. +faded aqua bags contain 1 bright plum bag. +pale crimson bags contain 2 mirrored magenta bags, 2 bright tan bags, 4 clear maroon bags. +mirrored tomato bags contain 5 bright bronze bags. +bright bronze bags contain 3 light red bags. +plaid green bags contain 5 striped green bags, 3 vibrant orange bags. +drab teal bags contain 4 plaid orange bags, 4 dotted teal bags, 1 vibrant chartreuse bag. +posh chartreuse bags contain 3 shiny teal bags, 5 dark tan bags, 1 dull olive bag. +dim lime bags contain 3 pale magenta bags, 5 striped tomato bags, 2 drab magenta bags, 4 striped blue bags. +vibrant fuchsia bags contain 5 plaid tomato bags, 2 dark coral bags, 5 mirrored lime bags, 3 plaid violet bags. +mirrored turquoise bags contain 5 wavy gray bags, 3 faded lavender bags, 5 muted fuchsia bags, 5 clear red bags. +plaid magenta bags contain 1 clear bronze bag, 3 muted cyan bags, 3 clear fuchsia bags. +muted blue bags contain 4 dotted indigo bags, 5 dim magenta bags. +dotted lime bags contain 5 vibrant aqua bags, 1 clear olive bag, 1 clear green bag. +dim teal bags contain 5 mirrored teal bags, 4 dotted teal bags, 1 mirrored tomato bag, 2 dull violet bags. +plaid blue bags contain 5 posh yellow bags, 2 mirrored crimson bags, 4 drab lavender bags, 5 plaid fuchsia bags. +drab turquoise bags contain 1 dotted plum bag, 4 dim gold bags, 3 mirrored white bags, 2 posh coral bags. +striped maroon bags contain 2 dim coral bags, 4 light cyan bags. +vibrant blue bags contain 2 dotted beige bags, 4 shiny green bags, 3 posh bronze bags, 3 posh olive bags. +posh teal bags contain 5 wavy beige bags, 1 striped black bag, 3 dotted teal bags. +light yellow bags contain 1 wavy olive bag, 4 shiny green bags, 2 clear teal bags. +dim silver bags contain 1 dark lime bag, 1 bright red bag. +drab gold bags contain 4 mirrored purple bags, 3 wavy maroon bags. +striped gray bags contain 3 wavy silver bags. +bright maroon bags contain 5 dull olive bags, 4 shiny gold bags. +dotted silver bags contain 4 dim tan bags, 3 posh tan bags, 1 clear crimson bag. +dark green bags contain 4 dim teal bags, 5 dull tan bags, 1 pale blue bag, 5 clear aqua bags. +clear crimson bags contain 1 posh gold bag, 1 dull violet bag, 4 mirrored green bags. +bright green bags contain 5 clear bronze bags, 2 wavy beige bags. +drab yellow bags contain 2 dim lavender bags, 4 striped indigo bags, 4 wavy green bags. +bright brown bags contain 5 drab maroon bags, 2 wavy beige bags. +dark purple bags contain 5 dark green bags. +striped magenta bags contain 2 vibrant blue bags, 3 muted yellow bags, 3 muted violet bags. +dim orange bags contain 4 dim fuchsia bags. +drab brown bags contain 3 plaid lavender bags, 3 mirrored plum bags, 1 faded black bag. +light magenta bags contain 2 clear beige bags, 3 shiny plum bags, 3 drab violet bags. +faded gray bags contain 5 mirrored green bags, 3 dull violet bags. +dull crimson bags contain 1 light gray bag, 2 dull gray bags. +dotted blue bags contain 2 faded lavender bags, 2 mirrored fuchsia bags, 2 dark blue bags. +bright black bags contain 4 dark chartreuse bags, 5 dim turquoise bags, 5 clear green bags, 2 striped teal bags. +dim plum bags contain 4 posh silver bags, 3 clear red bags. +plaid gray bags contain 2 clear silver bags, 1 posh lime bag, 3 striped gray bags, 3 dotted maroon bags. +muted plum bags contain 4 plaid aqua bags, 1 wavy gray bag, 2 light crimson bags, 1 dull red bag. +dark magenta bags contain 4 drab white bags, 5 dark lavender bags, 5 dim teal bags, 5 bright tan bags. +clear brown bags contain 2 mirrored teal bags, 1 striped silver bag, 3 mirrored purple bags, 3 faded gray bags. +muted brown bags contain 1 striped teal bag, 3 pale magenta bags, 3 striped tomato bags. +bright gray bags contain 1 dark fuchsia bag. +wavy teal bags contain 5 faded gold bags, 5 bright plum bags. +wavy bronze bags contain 4 posh turquoise bags, 5 muted red bags, 3 plaid crimson bags. +shiny lavender bags contain 4 bright tan bags, 5 drab teal bags, 1 shiny tan bag. +pale silver bags contain 2 mirrored beige bags, 2 drab crimson bags, 4 clear coral bags, 3 plaid brown bags. +drab silver bags contain 1 dark fuchsia bag, 3 drab magenta bags, 4 pale violet bags, 5 dull tan bags. +bright chartreuse bags contain 1 bright green bag. +light salmon bags contain 2 dim brown bags, 4 dark gold bags, 2 dull silver bags, 4 bright bronze bags. +clear silver bags contain 4 shiny gray bags, 3 drab green bags, 5 dim aqua bags, 2 drab olive bags. +wavy tomato bags contain 3 wavy green bags. +dotted magenta bags contain 4 posh purple bags. +striped fuchsia bags contain 4 vibrant maroon bags, 4 wavy tomato bags, 3 clear coral bags, 3 striped indigo bags. +wavy green bags contain 1 plaid aqua bag. +clear plum bags contain 2 wavy silver bags, 3 posh red bags, 2 dark gray bags, 4 dull brown bags. +striped aqua bags contain 5 dull gold bags, 5 mirrored green bags. +dull maroon bags contain 5 posh crimson bags, 1 muted tomato bag, 5 shiny gold bags. +muted green bags contain 5 faded blue bags, 2 dark tan bags, 1 mirrored bronze bag, 2 dotted crimson bags. +mirrored purple bags contain 3 clear green bags, 2 bright plum bags, 4 muted olive bags. +dull purple bags contain 3 plaid tan bags, 5 bright turquoise bags. +pale coral bags contain 1 clear olive bag. +wavy gray bags contain 4 light gold bags, 5 clear beige bags, 4 dim lime bags. +wavy cyan bags contain 2 striped olive bags. +drab orange bags contain 1 mirrored purple bag, 2 muted cyan bags, 4 posh purple bags. +wavy lime bags contain 2 striped indigo bags, 3 plaid plum bags, 3 drab violet bags, 5 muted magenta bags. +dull blue bags contain 3 drab magenta bags, 1 shiny teal bag, 5 mirrored fuchsia bags, 2 posh plum bags. +dark teal bags contain 4 shiny gray bags. +pale beige bags contain 4 faded blue bags, 2 dull red bags, 3 wavy beige bags, 2 dull tan bags. +pale purple bags contain 2 pale maroon bags. +clear magenta bags contain 3 muted olive bags, 3 bright teal bags, 4 dull salmon bags, 2 mirrored coral bags. +dark tan bags contain 2 plaid plum bags, 5 bright purple bags, 4 mirrored aqua bags. +pale turquoise bags contain 3 striped silver bags, 2 bright gray bags. +shiny indigo bags contain 5 mirrored fuchsia bags. +plaid plum bags contain no other bags. +plaid yellow bags contain 5 bright beige bags, 2 dull tan bags, 3 dim crimson bags, 1 vibrant tomato bag. +pale gray bags contain 5 mirrored green bags, 3 plaid aqua bags, 5 pale violet bags. +dotted crimson bags contain 5 striped lavender bags, 3 shiny orange bags. +plaid teal bags contain 2 bright aqua bags, 1 posh olive bag, 4 shiny white bags, 3 dotted beige bags. +dim brown bags contain 5 striped tomato bags, 5 wavy black bags, 3 pale magenta bags. +vibrant gray bags contain 4 dark cyan bags, 5 drab purple bags, 2 mirrored crimson bags, 4 dark turquoise bags. +light olive bags contain 2 mirrored teal bags. +posh aqua bags contain 5 muted cyan bags, 1 plaid aqua bag, 4 mirrored plum bags. +wavy tan bags contain 5 clear fuchsia bags, 1 bright silver bag, 5 clear green bags, 2 bright teal bags. +shiny cyan bags contain 3 clear green bags, 2 bright black bags, 3 muted magenta bags, 4 mirrored orange bags. +mirrored fuchsia bags contain no other bags. +plaid beige bags contain 4 wavy indigo bags, 2 bright green bags, 1 light magenta bag, 2 plaid tomato bags. +drab cyan bags contain 5 posh yellow bags, 5 dull white bags. +drab tan bags contain 5 wavy teal bags. +muted aqua bags contain 3 dim blue bags, 1 dim tan bag, 3 dim white bags. +posh tomato bags contain 1 clear purple bag, 4 vibrant crimson bags. +pale aqua bags contain 5 wavy fuchsia bags, 2 striped bronze bags. +pale magenta bags contain no other bags. +pale violet bags contain 1 pale maroon bag. +shiny teal bags contain 4 striped tomato bags, 1 bright plum bag, 1 dim crimson bag, 1 plaid aqua bag. +vibrant aqua bags contain 4 mirrored green bags, 4 dim crimson bags, 4 faded blue bags. +faded violet bags contain 1 dark green bag, 4 mirrored maroon bags, 1 dark lavender bag, 4 bright black bags. +mirrored tan bags contain 3 mirrored magenta bags. +faded cyan bags contain 5 dotted crimson bags, 1 vibrant yellow bag, 3 shiny bronze bags. +posh violet bags contain 4 dotted beige bags. +striped salmon bags contain 3 posh purple bags, 4 clear green bags. +mirrored indigo bags contain 2 posh plum bags. +dim gold bags contain 2 posh gold bags, 5 faded gray bags. +striped bronze bags contain 4 mirrored orange bags. +light white bags contain 3 shiny plum bags, 5 striped indigo bags. +muted purple bags contain 2 dull orange bags, 4 drab maroon bags, 4 striped lavender bags, 4 dim teal bags. +clear violet bags contain 5 plaid yellow bags, 3 dark lavender bags, 2 wavy salmon bags. +dotted black bags contain 1 pale brown bag, 1 drab magenta bag, 5 plaid plum bags, 5 clear crimson bags. +wavy black bags contain 5 dim lime bags, 4 drab magenta bags, 5 mirrored orange bags, 3 plaid plum bags. +plaid purple bags contain 4 dull maroon bags. +dotted cyan bags contain 4 pale indigo bags, 1 dark coral bag. +bright magenta bags contain 3 clear fuchsia bags, 2 plaid plum bags, 1 clear blue bag, 1 dim white bag. +posh blue bags contain 4 dark purple bags. +vibrant tomato bags contain 5 muted tomato bags, 5 striped indigo bags, 3 clear crimson bags. +drab black bags contain 3 dotted orange bags, 1 pale tomato bag, 2 bright maroon bags. +clear salmon bags contain 3 pale maroon bags. +mirrored beige bags contain 5 dark lavender bags, 5 light violet bags, 3 striped tomato bags. +muted gray bags contain 4 muted gold bags, 4 clear indigo bags, 4 light maroon bags. +posh indigo bags contain 4 faded aqua bags. +wavy red bags contain 3 dim crimson bags, 3 clear red bags, 3 wavy beige bags, 1 vibrant purple bag. +striped purple bags contain 4 mirrored orange bags, 3 drab magenta bags, 1 bright plum bag, 3 striped teal bags. +dull magenta bags contain 2 dim crimson bags, 2 wavy olive bags. +wavy brown bags contain 3 faded tomato bags, 1 muted olive bag, 2 light tomato bags, 1 shiny orange bag. +clear coral bags contain 2 shiny maroon bags. +dotted indigo bags contain 1 posh silver bag. +pale green bags contain 1 striped crimson bag, 3 dim coral bags, 5 mirrored aqua bags, 4 light cyan bags. +vibrant chartreuse bags contain 1 clear beige bag, 4 muted magenta bags, 2 mirrored orange bags, 5 pale teal bags. +muted salmon bags contain 1 muted brown bag, 5 dark chartreuse bags, 3 posh gold bags, 2 shiny indigo bags. +mirrored gold bags contain 2 dotted bronze bags, 3 muted bronze bags, 4 clear orange bags. +light purple bags contain 2 light blue bags, 5 muted black bags, 4 posh indigo bags. +clear aqua bags contain 2 muted chartreuse bags, 2 dotted black bags, 4 wavy black bags. +faded crimson bags contain 5 shiny salmon bags, 2 striped plum bags. +bright cyan bags contain 2 wavy olive bags, 3 muted turquoise bags. +pale yellow bags contain 1 pale beige bag, 3 striped cyan bags. +striped crimson bags contain 5 shiny indigo bags, 4 dim brown bags, 5 muted salmon bags, 5 mirrored green bags. +mirrored brown bags contain 1 pale tomato bag, 1 striped purple bag, 5 posh gold bags. +bright lime bags contain 2 muted red bags, 1 pale lavender bag, 1 posh white bag. +posh turquoise bags contain 3 pale white bags. +drab red bags contain 3 dark fuchsia bags. +striped gold bags contain 1 mirrored brown bag, 5 drab lavender bags, 4 dotted lavender bags. +dull red bags contain 2 dim crimson bags. +striped cyan bags contain 3 striped salmon bags, 3 wavy beige bags, 2 dim tan bags. +vibrant lime bags contain 1 pale lavender bag. +dotted violet bags contain 4 plaid gold bags, 3 clear green bags. +pale olive bags contain 3 light orange bags, 4 wavy silver bags, 4 shiny indigo bags. +plaid olive bags contain 4 dim purple bags, 5 wavy chartreuse bags, 3 posh plum bags, 4 light violet bags. +dotted coral bags contain 1 striped olive bag, 1 wavy gray bag, 1 vibrant chartreuse bag. +drab lavender bags contain 1 mirrored crimson bag. +mirrored crimson bags contain 3 dark gold bags. +vibrant orange bags contain 1 light blue bag, 3 mirrored brown bags, 2 mirrored plum bags, 3 pale lavender bags. +dull chartreuse bags contain 3 dotted bronze bags, 3 striped teal bags. +wavy turquoise bags contain 4 muted fuchsia bags. +shiny purple bags contain 5 drab salmon bags. +plaid brown bags contain 2 bright green bags, 5 clear aqua bags, 2 plaid plum bags. +pale bronze bags contain 3 bright red bags, 3 pale black bags, 1 wavy lime bag, 4 light maroon bags. +vibrant white bags contain 5 striped yellow bags, 4 dark tan bags. +mirrored blue bags contain 1 plaid indigo bag, 5 muted chartreuse bags, 2 plaid lime bags, 2 drab green bags. +wavy aqua bags contain 4 mirrored orange bags. +drab bronze bags contain 1 bright purple bag, 5 dim coral bags, 4 shiny green bags, 2 pale beige bags. +mirrored chartreuse bags contain 2 mirrored tomato bags, 4 posh lime bags, 5 posh tan bags, 4 pale aqua bags. +bright blue bags contain 3 dark violet bags. +mirrored yellow bags contain 2 pale tomato bags, 4 vibrant gold bags, 1 faded teal bag, 2 bright purple bags. +plaid black bags contain 2 plaid purple bags, 5 dotted bronze bags. +shiny silver bags contain 1 dull lavender bag, 5 pale magenta bags, 2 drab white bags. +mirrored salmon bags contain 1 muted lime bag, 4 shiny bronze bags. +muted maroon bags contain 3 muted lime bags, 1 muted turquoise bag. +light black bags contain 3 striped beige bags, 2 shiny olive bags, 2 drab olive bags. +wavy blue bags contain 2 dull violet bags, 1 pale magenta bag, 3 bright black bags. +light silver bags contain 1 shiny bronze bag, 2 faded lavender bags. +shiny coral bags contain 2 mirrored tomato bags, 2 faded fuchsia bags, 2 striped violet bags, 4 shiny orange bags. +striped coral bags contain 1 clear indigo bag, 3 muted bronze bags, 4 shiny turquoise bags. +shiny bronze bags contain 4 light gold bags. +bright crimson bags contain 4 mirrored blue bags, 3 dull aqua bags, 5 muted lavender bags, 1 dotted turquoise bag. +striped turquoise bags contain 3 striped indigo bags, 3 clear fuchsia bags, 4 bright black bags, 1 vibrant aqua bag. +faded green bags contain 3 posh olive bags, 4 bright violet bags, 5 dull yellow bags, 3 dull olive bags. +dark coral bags contain 2 wavy green bags, 2 shiny cyan bags, 5 light red bags, 3 bright red bags. +clear teal bags contain 3 plaid beige bags, 5 faded aqua bags, 2 dim yellow bags, 5 bright gray bags. +plaid chartreuse bags contain 2 dark magenta bags, 5 wavy olive bags, 2 plaid plum bags. +shiny aqua bags contain 1 wavy indigo bag, 1 dull bronze bag, 4 shiny bronze bags. +wavy salmon bags contain 2 pale lime bags, 4 drab silver bags. +striped yellow bags contain 4 faded black bags. +mirrored black bags contain 5 muted yellow bags. +bright gold bags contain 2 mirrored crimson bags, 1 vibrant purple bag. +vibrant purple bags contain 1 muted tomato bag, 5 shiny green bags, 1 dark turquoise bag. +dull fuchsia bags contain 1 wavy gold bag, 2 plaid yellow bags. +light maroon bags contain 5 striped indigo bags, 3 muted red bags, 3 muted lime bags, 2 striped lavender bags. +clear yellow bags contain 3 plaid beige bags. +clear tan bags contain 2 vibrant red bags, 4 light chartreuse bags. +dotted tomato bags contain 5 vibrant black bags, 5 dotted gray bags, 5 plaid red bags. +dark plum bags contain 5 dotted orange bags, 2 mirrored blue bags, 1 light indigo bag. +posh magenta bags contain 3 dim gold bags, 1 drab coral bag, 3 shiny tomato bags. +posh salmon bags contain 4 posh tomato bags, 3 pale silver bags. +vibrant bronze bags contain 4 posh orange bags. +dim tomato bags contain 2 dull black bags, 1 striped aqua bag. +posh white bags contain 3 shiny plum bags, 2 wavy olive bags. +mirrored plum bags contain 5 dotted teal bags, 2 bright maroon bags. +light coral bags contain 3 dull brown bags, 4 pale red bags, 4 dull orange bags, 5 dim crimson bags. +striped teal bags contain 1 plaid plum bag, 4 striped tomato bags, 1 mirrored orange bag, 5 mirrored fuchsia bags. +striped orange bags contain 4 dark crimson bags, 5 drab green bags, 5 striped tan bags. +dark gold bags contain 2 bright plum bags, 1 striped purple bag, 3 wavy beige bags. +drab fuchsia bags contain 5 wavy orange bags. +dull salmon bags contain 2 dull olive bags, 4 bright silver bags, 1 muted tomato bag. +shiny fuchsia bags contain 2 mirrored fuchsia bags, 1 bright black bag, 2 clear orange bags, 4 wavy gold bags. +clear bronze bags contain 4 posh purple bags, 3 dim gold bags, 3 light chartreuse bags, 1 shiny cyan bag. +dim gray bags contain 5 muted beige bags, 1 dim purple bag. +faded magenta bags contain 3 mirrored aqua bags, 3 vibrant maroon bags, 5 drab red bags, 1 light magenta bag. +muted fuchsia bags contain 1 dim indigo bag, 5 vibrant purple bags, 2 posh silver bags. +posh beige bags contain 3 dark gold bags. +bright yellow bags contain 2 mirrored blue bags. +clear orange bags contain 4 vibrant purple bags, 2 clear fuchsia bags. +pale salmon bags contain 4 wavy black bags, 3 muted olive bags, 5 wavy teal bags, 3 dotted orange bags. +dim chartreuse bags contain 1 mirrored bronze bag, 5 shiny lavender bags, 4 dark red bags. +clear gray bags contain 4 bright indigo bags, 5 wavy coral bags, 4 drab tomato bags, 1 mirrored tomato bag. +drab maroon bags contain 2 dotted lime bags, 2 muted beige bags, 2 clear aqua bags, 4 drab silver bags. +muted black bags contain 4 wavy fuchsia bags, 1 striped cyan bag, 4 faded purple bags. +clear blue bags contain 2 striped teal bags. +mirrored red bags contain 3 posh plum bags, 2 striped beige bags. +dull lavender bags contain 2 vibrant purple bags. +shiny maroon bags contain 4 vibrant chartreuse bags. +dim fuchsia bags contain 1 striped maroon bag, 3 faded gray bags, 4 vibrant aqua bags. +faded plum bags contain 5 posh black bags, 4 striped turquoise bags, 1 striped plum bag. +plaid cyan bags contain 1 dim turquoise bag, 1 mirrored tan bag, 5 plaid fuchsia bags. +muted olive bags contain 5 wavy beige bags, 5 striped tomato bags, 5 posh tan bags, 2 pale magenta bags. +dark cyan bags contain 5 wavy green bags, 4 muted violet bags. +vibrant lavender bags contain 1 mirrored orange bag, 4 dull yellow bags, 5 bright silver bags. +drab beige bags contain 1 drab yellow bag. +plaid indigo bags contain 5 clear olive bags, 4 striped teal bags, 4 pale violet bags, 4 shiny gold bags. +dark fuchsia bags contain 3 drab magenta bags, 1 mirrored orange bag. +faded chartreuse bags contain 5 pale blue bags, 3 dim tan bags, 5 dull red bags, 4 wavy maroon bags. +shiny orange bags contain 3 dark gold bags, 2 posh silver bags, 1 dull cyan bag, 4 drab silver bags. +striped black bags contain 5 wavy teal bags, 5 light chartreuse bags, 4 wavy coral bags. +light crimson bags contain 2 dim gold bags. +wavy yellow bags contain 2 dark lime bags, 1 bright fuchsia bag, 2 plaid purple bags, 4 dark bronze bags. +faded teal bags contain 3 posh bronze bags, 1 striped yellow bag, 3 dim aqua bags. +plaid gold bags contain 5 bright black bags, 2 shiny yellow bags, 5 mirrored orange bags, 5 dark lime bags. +clear beige bags contain 3 faded blue bags, 1 plaid plum bag. +dull plum bags contain 1 mirrored green bag, 3 mirrored lime bags. +bright beige bags contain 4 shiny white bags, 5 faded teal bags, 3 mirrored plum bags. +plaid turquoise bags contain 4 striped gray bags. +dark beige bags contain 5 plaid brown bags, 4 bright plum bags. +dull white bags contain 3 posh coral bags. +vibrant red bags contain 4 plaid red bags. +drab indigo bags contain 5 shiny black bags, 3 mirrored brown bags, 4 muted olive bags, 2 mirrored coral bags. +plaid lime bags contain 4 dim gold bags. +plaid tan bags contain 2 dark fuchsia bags, 3 dotted purple bags, 5 dull bronze bags, 3 light blue bags. +mirrored maroon bags contain 4 mirrored green bags, 1 dark tomato bag. +shiny red bags contain 1 dim salmon bag, 1 plaid plum bag, 4 drab orange bags, 5 shiny teal bags. +dark lime bags contain 4 shiny white bags, 3 shiny indigo bags, 4 light cyan bags, 2 muted brown bags. +dull yellow bags contain 3 muted brown bags, 1 light maroon bag. +mirrored silver bags contain 3 pale brown bags, 5 mirrored yellow bags, 1 pale teal bag, 4 plaid red bags. +light teal bags contain 3 posh plum bags. +drab tomato bags contain 2 pale coral bags, 5 clear olive bags. +mirrored lavender bags contain 3 plaid fuchsia bags, 3 muted yellow bags. +drab plum bags contain 5 plaid olive bags. +dotted purple bags contain 2 plaid red bags, 4 mirrored bronze bags, 5 shiny teal bags, 3 dim blue bags. +vibrant coral bags contain 1 dotted lime bag, 5 shiny salmon bags, 3 mirrored blue bags, 2 striped indigo bags. +faded olive bags contain 1 drab blue bag, 4 vibrant indigo bags, 3 dotted lavender bags, 5 muted silver bags. +wavy white bags contain 3 mirrored maroon bags, 2 dim white bags, 2 dark magenta bags, 4 clear fuchsia bags. +clear white bags contain 2 light chartreuse bags, 5 plaid fuchsia bags, 2 drab lime bags, 1 clear indigo bag. +pale blue bags contain 2 dim crimson bags, 4 light green bags, 4 vibrant aqua bags, 5 drab white bags. +mirrored olive bags contain 2 bright gold bags, 4 bright tomato bags. +vibrant salmon bags contain 5 dim maroon bags, 2 dull cyan bags. +plaid coral bags contain 1 bright gray bag. +plaid crimson bags contain 2 muted black bags, 3 drab turquoise bags, 2 mirrored beige bags. +faded maroon bags contain 5 drab tan bags, 4 mirrored brown bags, 1 light silver bag. +vibrant brown bags contain 2 faded salmon bags, 2 posh plum bags, 5 wavy lime bags, 2 shiny beige bags. +dull gold bags contain 5 shiny salmon bags, 3 drab silver bags, 1 wavy beige bag. +bright turquoise bags contain 5 wavy blue bags, 4 muted chartreuse bags. +light lavender bags contain 1 drab olive bag, 1 posh violet bag. +posh maroon bags contain 5 bright chartreuse bags, 4 muted black bags, 3 dull tan bags, 2 mirrored gray bags. +muted red bags contain 1 striped crimson bag, 5 light blue bags. +dark violet bags contain 2 muted blue bags, 1 light bronze bag. +striped chartreuse bags contain 1 dark violet bag, 1 faded turquoise bag, 3 vibrant tomato bags, 5 dotted teal bags. +dull turquoise bags contain 3 drab tan bags. +vibrant olive bags contain 2 drab purple bags. +shiny yellow bags contain 2 faded lavender bags, 4 shiny cyan bags. +posh lime bags contain 3 light plum bags, 4 clear magenta bags. +dotted aqua bags contain 3 dim lime bags, 2 light green bags. +dim yellow bags contain 4 bright brown bags, 4 wavy coral bags. +shiny blue bags contain 4 dotted yellow bags, 1 dim crimson bag, 1 clear black bag. +wavy maroon bags contain 4 vibrant aqua bags, 4 striped bronze bags, 3 dotted silver bags. +drab coral bags contain 1 wavy teal bag, 3 plaid orange bags, 2 posh orange bags, 1 mirrored olive bag. +bright teal bags contain 2 pale magenta bags. +bright purple bags contain 4 shiny chartreuse bags, 5 plaid lime bags, 2 dim magenta bags. +