2016-12-16 22:21:15 +00:00
|
|
|
|
Advent of Code
|
|
|
|
|
|
|
|
|
|
br0xen 42*
|
|
|
|
|
|
|
|
|
|
• [About]
|
|
|
|
|
• [Stats]
|
|
|
|
|
• [Leaderboard]
|
|
|
|
|
• [Settings]
|
|
|
|
|
• [Log out]
|
|
|
|
|
|
|
|
|
|
--- Day 21: RPG Simulator 20XX ---
|
|
|
|
|
|
2018-03-15 16:24:23 +00:00
|
|
|
|
Little Henry Case got a new video game for Christmas. It's an RPG, and he's
|
|
|
|
|
stuck on a boss. He needs to know what equipment to buy at the shop. He
|
|
|
|
|
hands you the controller.
|
|
|
|
|
|
|
|
|
|
In this game, the player (you) and the enemy (the boss) take turns
|
|
|
|
|
attacking. The player always goes first. Each attack reduces the opponent's
|
|
|
|
|
hit points by at least 1. The first character at or below 0 hit points
|
|
|
|
|
loses.
|
|
|
|
|
|
|
|
|
|
Damage dealt by an attacker each turn is equal to the attacker's damage
|
|
|
|
|
score minus the defender's armor score. An attacker always does at least 1
|
|
|
|
|
damage. So, if the attacker has a damage score of 8, and the defender has an
|
|
|
|
|
armor score of 3, the defender loses 5 hit points. If the defender had an
|
|
|
|
|
armor score of 300, the defender would still lose 1 hit point.
|
|
|
|
|
|
|
|
|
|
Your damage score and armor score both start at zero. They can be increased
|
|
|
|
|
by buying items in exchange for gold. You start with no items and have as
|
|
|
|
|
much gold as you need. Your total damage or armor is equal to the sum of
|
|
|
|
|
those stats from all of your items. You have 100 hit points.
|
2016-12-16 22:21:15 +00:00
|
|
|
|
|
|
|
|
|
Here is what the item shop is selling:
|
|
|
|
|
|
|
|
|
|
Weapons: Cost Damage Armor
|
|
|
|
|
Dagger 8 4 0
|
|
|
|
|
Shortsword 10 5 0
|
|
|
|
|
Warhammer 25 6 0
|
|
|
|
|
Longsword 40 7 0
|
|
|
|
|
Greataxe 74 8 0
|
|
|
|
|
|
|
|
|
|
Armor: Cost Damage Armor
|
|
|
|
|
Leather 13 0 1
|
|
|
|
|
Chainmail 31 0 2
|
|
|
|
|
Splintmail 53 0 3
|
|
|
|
|
Bandedmail 75 0 4
|
|
|
|
|
Platemail 102 0 5
|
|
|
|
|
|
|
|
|
|
Rings: Cost Damage Armor
|
|
|
|
|
Damage +1 25 1 0
|
|
|
|
|
Damage +2 50 2 0
|
|
|
|
|
Damage +3 100 3 0
|
|
|
|
|
Defense +1 20 0 1
|
|
|
|
|
Defense +2 40 0 2
|
|
|
|
|
Defense +3 80 0 3
|
|
|
|
|
|
2018-03-15 16:24:23 +00:00
|
|
|
|
You must buy exactly one weapon; no dual-wielding. Armor is optional, but
|
|
|
|
|
you can't use more than one. You can buy 0-2 rings (at most one for each
|
|
|
|
|
hand). You must use any items you buy. The shop only has one of each item,
|
|
|
|
|
so you can't buy, for example, two rings of Damage +3.
|
2016-12-16 22:21:15 +00:00
|
|
|
|
|
2018-03-15 16:24:23 +00:00
|
|
|
|
For example, suppose you have 8 hit points, 5 damage, and 5 armor, and that
|
|
|
|
|
the boss has 12 hit points, 7 damage, and 2 armor:
|
2016-12-16 22:21:15 +00:00
|
|
|
|
|
|
|
|
|
• The player deals 5-2 = 3 damage; the boss goes down to 9 hit points.
|
|
|
|
|
• The boss deals 7-5 = 2 damage; the player goes down to 6 hit points.
|
|
|
|
|
• The player deals 5-2 = 3 damage; the boss goes down to 6 hit points.
|
|
|
|
|
• The boss deals 7-5 = 2 damage; the player goes down to 4 hit points.
|
|
|
|
|
• The player deals 5-2 = 3 damage; the boss goes down to 3 hit points.
|
|
|
|
|
• The boss deals 7-5 = 2 damage; the player goes down to 2 hit points.
|
|
|
|
|
• The player deals 5-2 = 3 damage; the boss goes down to 0 hit points.
|
|
|
|
|
|
|
|
|
|
In this scenario, the player wins! (Barely.)
|
|
|
|
|
|
2018-03-15 16:24:23 +00:00
|
|
|
|
You have 100 hit points. The boss's actual stats are in your puzzle input.
|
|
|
|
|
What is the least amount of gold you can spend and still win the fight?
|
2016-12-16 22:21:15 +00:00
|
|
|
|
|
|
|
|
|
Your puzzle answer was 91.
|
|
|
|
|
|
|
|
|
|
--- Part Two ---
|
|
|
|
|
|
2018-03-15 16:24:23 +00:00
|
|
|
|
Turns out the shopkeeper is working with the boss, and can persuade you to
|
|
|
|
|
buy whatever items he wants. The other rules still apply, and he still only
|
|
|
|
|
has one of each item.
|
2016-12-16 22:21:15 +00:00
|
|
|
|
|
|
|
|
|
What is the most amount of gold you can spend and still lose the fight?
|
|
|
|
|
|
|
|
|
|
Your puzzle answer was 158.
|
|
|
|
|
|
|
|
|
|
Both parts of this puzzle are complete! They provide two gold stars: **
|
|
|
|
|
|
2018-03-15 16:24:23 +00:00
|
|
|
|
At this point, you should return to your advent calendar and try another
|
|
|
|
|
puzzle.
|
2016-12-16 22:21:15 +00:00
|
|
|
|
|
|
|
|
|
If you still want to see it, you can get your puzzle input.
|
|
|
|
|
|
|
|
|
|
References
|
|
|
|
|
|
|
|
|
|
Visible links
|
|
|
|
|
. http://adventofcode.com/
|
|
|
|
|
. http://adventofcode.com/about
|
|
|
|
|
. http://adventofcode.com/stats
|
|
|
|
|
. http://adventofcode.com/leaderboard
|
|
|
|
|
. http://adventofcode.com/settings
|
|
|
|
|
. http://adventofcode.com/auth/logout
|
|
|
|
|
. https://en.wikipedia.org/wiki/Role-playing_video_game
|
|
|
|
|
. https://en.wikipedia.org/wiki/Game_controller
|
|
|
|
|
. http://adventofcode.com/
|
|
|
|
|
. http://adventofcode.com/day/21/input
|