From e13f5c8cf9a0c6d1540de00fd128337c5ba02bea Mon Sep 17 00:00:00 2001 From: Nat Lasseter Date: Thu, 19 Dec 2019 17:00:18 +0000 Subject: Day16, part2 untested, runs forever --- day16/part1 | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100755 day16/part1 (limited to 'day16/part1') diff --git a/day16/part1 b/day16/part1 new file mode 100755 index 0000000..f9bbd52 --- /dev/null +++ b/day16/part1 @@ -0,0 +1,25 @@ +#!/usr/bin/env ruby + +BASE = [0, 1, 0, -1] + +input = $stdin.readlines[0].strip.chars.map(&:to_i) + +def get_base(n = 1, l = 0) + rbase = BASE.map { |b| + [b] * n + }.flatten + t = ((l + 1) / rbase.length) + 1 + (rbase * t)[1..l] +end + +l = input.length +100.times do + newinput = [] + l.times do |i| + newinput[i] = input.zip(get_base(i+1, l)) + .map{|a, b| a * b}.sum.abs % 10 + end + input = newinput +end + +puts input.join[0...8] -- cgit v1.2.1