diff --git a/day_03/2.rb b/day_03/2.rb index 486041a..baf3aba 100755 --- a/day_03/2.rb +++ b/day_03/2.rb @@ -7,20 +7,20 @@ class Main $stdin.each_line do |line| nums = line.chomp.each_char.map(&:to_i) - largest_joltage = recurse(12, nums, []) - @sum += largest_joltage.join.to_i + memo = recurse(12, nums, []) + @sum += memo.join.to_i end puts @sum end - def recurse(i, nums, largest_joltage) - return largest_joltage if i == 0 + def recurse(i, nums, memo) + return memo if i == 0 max = nums[..-i].max - largest_joltage << max + memo << max - recurse(i - 1, nums[nums.find_index(max) + 1..], largest_joltage) + recurse(i - 1, nums[nums.find_index(max) + 1..], memo) end end