This commit is contained in:
2023-12-04 00:53:27 -05:00
parent f077a981fb
commit aea090e330
3 changed files with 236 additions and 0 deletions

21
2023/day4/p2.rb Normal file
View File

@@ -0,0 +1,21 @@
# frozen_string_literal: true
card_win_map = []
total_cards = 0
File.foreach('./2023/day4/data') do |line|
total_cards += 1
winning_nums = line.split(':')[1].strip.split(' | ')[0].split(' ').map(&:itself)
your_nums = line.split(':')[1].strip.split(' | ')[1].split(' ').map(&:itself)
card_win_map[total_cards - 1] = your_nums.count { |num| winning_nums.include?(num) }
end
cards_to_process = Array.new(card_win_map.length) { |i| i }
until cards_to_process.empty?
current_card = cards_to_process.pop
card_win_map[current_card].times do |i|
cards_to_process << i + current_card + 1
total_cards += 1
end
end
puts total_cards