141 lines
		
	
	
		
			6.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			141 lines
		
	
	
		
			6.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|                                                         Advent of Code
 | ||
| 
 | ||
|      • [About]
 | ||
|      • [Events]
 | ||
|      • [Shop]
 | ||
|      • [Settings]
 | ||
|      • [Log Out]
 | ||
| 
 | ||
|    br0xen (AoC++) 6*
 | ||
| 
 | ||
|                                                               /*2022*/
 | ||
| 
 | ||
|      • [Calendar]
 | ||
|      • [AoC++]
 | ||
|      • [Sponsors]
 | ||
|      • [Leaderboard]
 | ||
|      • [Stats]
 | ||
| 
 | ||
|    Our sponsors help make Advent of Code possible:
 | ||
|    Spotify - Follow our engineering blog to see how our developers solve complex tech problems, at scale, every day.
 | ||
| 
 | ||
| --- Day 3: Rucksack Reorganization ---
 | ||
| 
 | ||
|    One Elf has the important job of loading all of the rucksacks with supplies for the jungle journey. Unfortunately, that
 | ||
|    Elf didn't quite follow the packing instructions, and so a few items now need to be rearranged.
 | ||
| 
 | ||
|    Each rucksack has two large compartments. All items of a given type are meant to go into exactly one of the two
 | ||
|    compartments. The Elf that did the packing failed to follow this rule for exactly one item type per rucksack.
 | ||
| 
 | ||
|    The Elves have made a list of all of the items currently in each rucksack (your puzzle input), but they need your help
 | ||
|    finding the errors. Every item type is identified by a single lowercase or uppercase letter (that is, a and A refer to
 | ||
|    different types of items).
 | ||
| 
 | ||
|    The list of items for each rucksack is given as characters all on a single line. A given rucksack always has the same
 | ||
|    number of items in each of its two compartments, so the first half of the characters represent items in the first
 | ||
|    compartment, while the second half of the characters represent items in the second compartment.
 | ||
| 
 | ||
|    For example, suppose you have the following list of contents from six rucksacks:
 | ||
| 
 | ||
|  vJrwpWtwJgWrhcsFMMfFFhFp
 | ||
|  jqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL
 | ||
|  PmmdzqPrVvPwwTWBwg
 | ||
|  wMqvLMZHhHMvwLHjbvcjnnSBnvTQFn
 | ||
|  ttgJtRGJQctTZtZT
 | ||
|  CrZsJsPPZsGzwwsLwLmpwMDw
 | ||
| 
 | ||
|      • The first rucksack contains the items vJrwpWtwJgWrhcsFMMfFFhFp, which means its first compartment contains the items
 | ||
|        vJrwpWtwJgWr, while the second compartment contains the items hcsFMMfFFhFp. The only item type that appears in both
 | ||
|        compartments is lowercase p.
 | ||
|      • The second rucksack's compartments contain jqHRNqRjqzjGDLGL and rsFMfFZSrLrFZsSL. The only item type that appears in
 | ||
|        both compartments is uppercase L.
 | ||
|      • The third rucksack's compartments contain PmmdzqPrV and vPwwTWBwg; the only common item type is uppercase P.
 | ||
|      • The fourth rucksack's compartments only share item type v.
 | ||
|      • The fifth rucksack's compartments only share item type t.
 | ||
|      • The sixth rucksack's compartments only share item type s.
 | ||
| 
 | ||
|    To help prioritize item rearrangement, every item type can be converted to a priority:
 | ||
| 
 | ||
|      • Lowercase item types a through z have priorities 1 through 26.
 | ||
|      • Uppercase item types A through Z have priorities 27 through 52.
 | ||
| 
 | ||
|    In the above example, the priority of the item type that appears in both compartments of each rucksack is 16 (p), 38
 | ||
|    (L), 42 (P), 22 (v), 20 (t), and 19 (s); the sum of these is 157.
 | ||
| 
 | ||
|    Find the item type that appears in both compartments of each rucksack. What is the sum of the priorities of those item
 | ||
|    types?
 | ||
| 
 | ||
|    Your puzzle answer was 7967.
 | ||
| 
 | ||
| --- Part Two ---
 | ||
| 
 | ||
|    As you finish identifying the misplaced items, the Elves come to you with another issue.
 | ||
| 
 | ||
|    For safety, the Elves are divided into groups of three. Every Elf carries a badge that identifies their group. For
 | ||
|    efficiency, within each group of three Elves, the badge is the only item type carried by all three Elves. That is, if a
 | ||
|    group's badge is item type B, then all three Elves will have item type B somewhere in their rucksack, and at most two of
 | ||
|    the Elves will be carrying any other item type.
 | ||
| 
 | ||
|    The problem is that someone forgot to put this year's updated authenticity sticker on the badges. All of the badges need
 | ||
|    to be pulled out of the rucksacks so the new authenticity stickers can be attached.
 | ||
| 
 | ||
|    Additionally, nobody wrote down which item type corresponds to each group's badges. The only way to tell which item type
 | ||
|    is the right one is by finding the one item type that is common between all three Elves in each group.
 | ||
| 
 | ||
|    Every set of three lines in your list corresponds to a single group, but each group can have a different badge item
 | ||
|    type. So, in the above example, the first group's rucksacks are the first three lines:
 | ||
| 
 | ||
|  vJrwpWtwJgWrhcsFMMfFFhFp
 | ||
|  jqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL
 | ||
|  PmmdzqPrVvPwwTWBwg
 | ||
| 
 | ||
|    And the second group's rucksacks are the next three lines:
 | ||
| 
 | ||
|  wMqvLMZHhHMvwLHjbvcjnnSBnvTQFn
 | ||
|  ttgJtRGJQctTZtZT
 | ||
|  CrZsJsPPZsGzwwsLwLmpwMDw
 | ||
| 
 | ||
|    In the first group, the only item type that appears in all three rucksacks is lowercase r; this must be their badges. In
 | ||
|    the second group, their badge item type must be Z.
 | ||
| 
 | ||
|    Priorities for these items must still be found to organize the sticker attachment efforts: here, they are 18 (r) for the
 | ||
|    first group and 52 (Z) for the second group. The sum of these is 70.
 | ||
| 
 | ||
|    Find the item type that corresponds to the badges of each three-Elf group. What is the sum of the priorities of those
 | ||
|    item types?
 | ||
| 
 | ||
|    Your puzzle answer was 2716.
 | ||
| 
 | ||
|    Both parts of this puzzle are complete! They provide two gold stars: **
 | ||
| 
 | ||
|    At this point, you should return to your Advent calendar and try another puzzle.
 | ||
| 
 | ||
|    If you still want to see it, you can get your puzzle input.
 | ||
| 
 | ||
|    You can also [Shareon Twitter Mastodon] this puzzle.
 | ||
| 
 | ||
| References
 | ||
| 
 | ||
|    Visible links
 | ||
|    . https://adventofcode.com/
 | ||
|    . https://adventofcode.com/2022/about
 | ||
|    . https://adventofcode.com/2022/events
 | ||
|    . https://teespring.com/stores/advent-of-code
 | ||
|    . https://adventofcode.com/2022/settings
 | ||
|    . https://adventofcode.com/2022/auth/logout
 | ||
|    . Advent of Code Supporter
 | ||
| 	https://adventofcode.com/2022/support
 | ||
|    . https://adventofcode.com/2022
 | ||
|    . https://adventofcode.com/2022
 | ||
|    . https://adventofcode.com/2022/support
 | ||
|    . https://adventofcode.com/2022/sponsors
 | ||
|    . https://adventofcode.com/2022/leaderboard
 | ||
|    . https://adventofcode.com/2022/stats
 | ||
|    . https://adventofcode.com/2022/sponsors
 | ||
|    . https://engineering.atspotify.com/
 | ||
|    . https://en.wikipedia.org/wiki/Rucksack
 | ||
|    . https://adventofcode.com/2022
 | ||
|    . https://adventofcode.com/2022/day/3/input
 | ||
|    . https://twitter.com/intent/tweet?text=I%27ve+completed+%22Rucksack+Reorganization%22+%2D+Day+3+%2D+Advent+of+Code+2022&url=https%3A%2F%2Fadventofcode%2Ecom%2F2022%2Fday%2F3&related=ericwastl&hashtags=AdventOfCode
 | ||
|    . javascript:void(0);
 |