From 592d8b2384a04de1a05eeb0ffde9401044b68a4d Mon Sep 17 00:00:00 2001 From: Alpha Chen Date: Mon, 19 Dec 2016 09:11:11 -0800 Subject: [PATCH] [2016][ruby][19.0] --- 2016/ruby/day_19.rb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 2016/ruby/day_19.rb diff --git a/2016/ruby/day_19.rb b/2016/ruby/day_19.rb new file mode 100644 index 0000000..6ec925f --- /dev/null +++ b/2016/ruby/day_19.rb @@ -0,0 +1,16 @@ +Elf = Struct.new(:id, :presents) + +n = 3017957 +elves = Array.new(n) {|i| Elf.new(i+1, 1) } + +until elves.size == 1 + elf = elves.shift + next if elf.presents.zero? + + elf.presents += elves.first.presents + elves.first.presents = 0 + + elves << elf +end + +p elves