From: James Edward Gray II Date: 2006-05-08T22:36:10+09:00 Subject: Re: [QUIZ] Bracket Packing (#78) Here's my solution for checking outputs. James Edward Gray II #!/usr/local/bin/ruby -w require "strscan" stack = Array.new input = StringScanner.new(ARGF.read) until input.eos? if input.scan(/[\[({]/) stack.push(input.matched) elsif input.scan(/[\])}]/) exit(1) unless "#{stack.pop}#{input.matched}" =~ /\A(?:\[\]|\(\)| \{\})\Z/ else input.scan(/[^\[\](){}]+/) end end