C++ и Python

Баланс скобок (3)

Баланс скобок

Условие

Последовательность скобок может быть сбалансирована или нет. Например, последовательности [{([][])}[]] или []() --- сбалансированные, а {[]) - нет. Создайте функцию isBalanced, который определяет, сбалансированы скобки в строке или нет:

bool isBalanced(const std::string&);

Указания

Учитывайте три вида скобок: {}, [] и (). Программа должна считывать строчку из стандартного ввода и выводить в стандартный вывод Balanced, если скобки сбалансированы, и Not balanced в противном случае.

  • Бо́льшая часть функциональности уже реализована в main.cpp, вам остаётся только реализовать функцию BraceChecker в файле BraceChecker.cpp.
  • Последовательнось может содержать не только скобки - мы эти символы пропускаем. Последовательность не содержит переносы строк, но может содержать пробелы.

Как тестировать локально

  1. Установить библиотеку Google Test.

  2. Собрать программу с помощью cmake и запустить ctest:

    mkdir build; cd build
    cmake ..; cmake --build .
    ctest -V