Something went wrong. Try again.
Code for the Advent of Code event
aoc advent-of-code
Something went wrong. Try again.
575 B · 27 lines
Ruby
at rust
12345678910111213141516171819202122232425262728#!/usr/bin/env ruby# frozen_string_literal: true
require 'matrix'
reactor = {}
ARGF.each_line do |line| puts "Processing: #{line}" op, ranges = line.split next if ranges.nil? || ranges == '' op = op == 'on' xrange, yrange, zrange = ranges.scan(/-?\d+\.\.-?\d+/).map { eval(_1) } xrange.each do |x| next if x < -50 || x > 50 yrange.each do |y| next if y < -50 || y > 50 zrange.each do |z| next if z < -50 || z > 50 pos = Vector[x, y, z] reactor[pos] = op end end endend
puts reactor.values.count(true)