Problem 8. Balanced Parentheses / C# Advanced
Привет,
въпросната задача ми дава само 87/100 точки не намирам къде греша, ще съм благодарен за малко помощ!
https://judge.softuni.bg/Contests/Compete/Index/1447#7
УСЛОВИЕ:
Given a sequence consisting of parentheses, determine whether the expression is balanced. A sequence of parentheses is balanced if every open parenthesis can be paired uniquely with a closed parenthesis that occurs after the former. Also, the interval between them must be balanced. You will be given three types of parentheses: (, {, and [.
{[()]} - This is a balanced parenthesis.
{[(])} - This is not a balanced parenthesis.
Input
- Each input consists of a single line, the sequence of parentheses.
Output
- For each test case, print on a new line "YES" if the parentheses are balanced.
Otherwise, print "NO". Do not print the quotes.
Constraints
- 1 ≤ lens ≤ 1000, where lens is the length of the sequence.
- Each character of the sequence will be one of {, }, (, ), [, ].
Examples
Input |
Output |
{[()]} |
YES |
{[(])} |
NO |
{{[[(())]]}} |
YES |
Кодът ми също ги хваща тези условия които си показал за балансирани! Грешката ми е някъде другаде на което се надавях да разбера къде точно. Иначе благодаря Ти за краткия код, но малко трудно го разбирам. Прегледах готови решения повечето не са добре читими, поне за мен. Затова продоставих по-дълга версия но по-четима и разбираема, проблема е, че не сработва на 100/100. Бих искал помощ за това къде греша от колкото други решения.
{{{()[]}[]}} -> YES
това е балансирано е твоето решение не ги хваща всички такива дето нямат симетрия и не се затварят веднага
ПС и с тази логика дето гледаш само отпред и още едно и отзад и още едно, просто няма как да ги хванеш.
Не предполагах такава комбинация, това за което гледам за текуща скоба и следваща е за да включа ПР: ({}[]), ще помисля и за такав израз, който си дал, благодаря!