From 4a22c4e119c6cad69bdf7687d509f69e391f33c0 Mon Sep 17 00:00:00 2001 From: Nat Lasseter Date: Fri, 8 Dec 2017 17:18:19 +0000 Subject: Day 08 --- day08/part1 | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100755 day08/part1 (limited to 'day08/part1') diff --git a/day08/part1 b/day08/part1 new file mode 100755 index 0000000..167e761 --- /dev/null +++ b/day08/part1 @@ -0,0 +1,33 @@ +#!/usr/bin/env ruby + +input = $stdin.readlines.map(&:chomp) +h = {} + +input.each do |line| + cmd, cond = line.split(' if ') + + cmda = cmd.split + reg = cmda[0] + h[reg] = 0 if h[reg].nil? + chg = (cmda[1] == 'inc' ? cmda[2].to_i : -cmda[2].to_i) + + conda = cond.split + h[conda[0]] = 0 if h[conda[0]].nil? + go = case conda[1] + when '<' + h[conda[0]] < conda[2].to_i + when '<=' + h[conda[0]] <= conda[2].to_i + when '==' + h[conda[0]] == conda[2].to_i + when '>=' + h[conda[0]] >= conda[2].to_i + when '>' + h[conda[0]] > conda[2].to_i + when '!=' + h[conda[0]] != conda[2].to_i + end + h[reg] += chg if go +end + +puts h.to_a.map(&:last).max -- cgit v1.2.3