advent calendar 형식으로, 크리스마스 관련된 주제의 설정하에 크리스마스까지 뭔가를 달성하기 위해서는 하루에 코딩 문제 2개씩을 풀어야하는 사이트. 2017년에 알게되어 며칠 풀어보다가 흐지부지됐는데, 2018년에 다시 도전. ruby + minitest 연습을 겸한다.
문제
https://adventofcode.com/2018/day/1
입력 파일 : +1
, -2
와 같은 조정값이 한줄에 하나씩 들어있음.
초기 주파수에서 위 입력파일의 조정수치를 적용한 최종 주파수가 무엇인지 알아내기
풀이
첫날 문제라 문자열을 그냥 int 로 바꿔서 sum 하면 되는 간단한 문제.
device_frequency.rb
class DeviceFrequency
def self.adjust(input, current)
input.split(",")
.map {|x| x.split("\n")}
.flatten
.map {|x| x.to_i}
.compact.sum + current
end
end
main.rb
require './lib/device_frequency'
input = File.read('input.txt').strip
print "Adjusted frequency is #{DeviceFrequency.adjust input, 0}\n"