Я не понял последние два поста ТС. Но относительно вычисления количества открывающихся и закрывающихся скобок и последующее сравнение этих двух величин, не корректно. Пример: "())(". Баланс количества 0, но сказать, что здесь все открывающиеся скобки закрыты не верно.
scsiman правльно сказал как решать задачу. Только при нахождении каждой закрывающейся скобки нужно проверять, что счётчик числа не закрытых скобок не уходит в минус.