[2021][ruby][7.x]
change qlyztvmtqpkoyxksxqxzlrukrwknxuls
commit 4d7a521d7a9fb4680893d502d3365d5c9b2178fd
author Alpha Chen <alpha@kejadlen.dev>
date
parent mpkotuyw
diff --git a/2021/ruby/day_07.rb b/2021/ruby/day_07.rb
new file mode 100644
index 0000000..8ddf55a
--- /dev/null
+++ b/2021/ruby/day_07.rb
@@ -0,0 +1,9 @@
+positions = ARGF.read.split(?,).map(&:to_i)
+min, max = positions.minmax
+pos = (min..max).min_by {|i|
+  # positions.sum {|p| (p - i).abs }
+  positions.sum {|p| n = (p - i).abs; (n * (n + 1)) / 2 }
+}
+
+# p positions.sum {|p| (p - pos).abs }
+p positions.sum {|p| n = (p - pos).abs; (n * (n + 1)) / 2 }