puts DATA.readlines.sum { |line| line.scan(/(\d+) (\w+)/).group_by(&:last).map { _2.map { |n,| n.to_i }.max }.reduce(:*) } __END__ Data goes here