You're given the opportunity to write software for the Bracketeerâ„¢, an ancient but powerful mainframe. The software that runs on it is written in a proprietary language. Much of its syntax is familiar, but you notice lots of brackets, braces and parentheses. Despite the Bracketeerâ„¢ being powerful, it lacks flexibility. If the source code has any unbalanced brackets, braces or parentheses, the Bracketeerâ„¢ crashes and must be rebooted. To avoid such a scenario, you start writing code that can verify that brackets, braces, and parentheses are balanced before attempting to run it on the Bracketeerâ„¢.
Given a string containing brackets []
, braces {}
, parentheses ()
, or any combination thereof, verify that any and all pairs are matched and nested correctly.
Any other characters should be ignored.
For example, "{what is (42)}?"
is balanced and "[text}"
is not.
Sign up to Exercism to learn and master Scala with 94 exercises, and real human mentoring, all for free.