#!/usr/bin/env ruby # frozen_string_literal: true require_relative "grid" class Main def run data = [] $stdin.each_line do |line| data << line.chomp end @sum = 0 grid = Grid.new(data) (0...grid.rows.size).each do |row_index| (0...grid.columns.size).each do |column_index| cell = grid.cell_at(row_index, column_index) next unless cell.value == "@" if cell.neighbours.count do |neighbour| neighbour.value == "@" end < 4 @sum += 1 end end end puts @sum end end Main.new.run