21 lines
330 B
Crystal
21 lines
330 B
Crystal
changes = File.read("day1_input").split("\n")
|
|
.select { |it| !it.empty? }
|
|
.map(&.to_i)
|
|
|
|
puts "Final frequency: #{changes.sum}"
|
|
|
|
count = { 0 => 1 }
|
|
acc = 0
|
|
|
|
changes.cycle do |i|
|
|
acc += i
|
|
old_count = count[acc]? || 0
|
|
new_count = old_count + 1
|
|
count[acc] = new_count
|
|
|
|
if new_count == 2
|
|
puts acc
|
|
exit
|
|
end
|
|
end
|