From: "Alexandru E. Ungur" Date: 2006-05-08T02:22:06+09:00 Subject: Re: [QUIZ] Bracket Packing (#78) Here's my solution. I tried to make the most compact solution I could, based on my 2.5 months Ruby experience, so it may not be too pretty :) Any comments are highly welcomed. If the string is valid it outputs it and returns with exit code 0 otherwise outputs nothing and returns with exit code 1 Have a nice day everyone, Alex __CODE__ OC,OK,ERR='([{)]}',0,1 i=ARGV[0];r=OK;s=[] i.scan(/./) { |c| next if (ci=OC.index(c)).nil? s.push OC[ci+3].chr if ci<3 r=ERR if ci>2 and s.pop!=c } r=ERR unless s.empty? puts i if r==OK exit r