groups = File.read("input.txt").split("\n\n").map(&:split) puts groups.map { |group| group.join.chars.uniq.size }.sum # TIL about uniq puts groups.map { |group| group.map(&:chars).reduce(&:&).size }.sum # TIL you can use & on arrays and not just sets?