From 231f9718882bebfa93858597dde4eff5b42a28c7 Mon Sep 17 00:00:00 2001 From: Alpha Chen Date: Thu, 10 Dec 2020 07:44:36 -0800 Subject: [PATCH] [2020][ruby][10.x] --- 2020/ruby/day_10.rb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 2020/ruby/day_10.rb diff --git a/2020/ruby/day_10.rb b/2020/ruby/day_10.rb new file mode 100644 index 0000000..e562da7 --- /dev/null +++ b/2020/ruby/day_10.rb @@ -0,0 +1,16 @@ +adapters = ARGF.read.scan(/\d+/).map(&:to_i) + +outlet = 0 +device = adapters.max + 3 + +dist = (adapters + [outlet, device]).sort.each_cons(2).map {|a,b| b - a } + +# part 1 +# tally = dist.tally +# p dist[1] * dist[3] + +p dist + .slice_when {|a,b| a != b } + .select {|run| run.first == 1 } + .map {|run| { 1 => 1, 2 => 2, 3 => 4, 4 => 7 }.fetch(run.size) } + .inject {|a,b| a*b }