Advertisement
vvsvvs

Untitled

May 18th, 2022
696
137 days
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3.  
  4. namespace Balanced_Parenthesis
  5. {
  6.     class BalancedParenthesis
  7.     {
  8.         static void Main(string[] args)
  9.         {
  10.             char[] inputText = Console.ReadLine().ToCharArray();
  11.  
  12.             Stack<char> brackets = new Stack<char>();
  13.             bool isBalanced = true;
  14.  
  15.             foreach (char item in inputText)
  16.             {
  17.                 bool isOpenBracket = ((item.Equals('{')) || (item.Equals('[')) || (item.Equals('(')));
  18.                 bool isCloseBracket = ((item.Equals('}')) || (item.Equals(']')) || (item.Equals(')')));
  19.  
  20.                 if (isBalanced)
  21.                 {
  22.                     if ((brackets.Count == 0) && (isOpenBracket))
  23.                     {
  24.                         brackets.Push(item);
  25.                     }
  26.                     else if (isOpenBracket)
  27.                     {
  28.                         brackets.Push(item);
  29.                     }
  30.                     else if ((isCloseBracket) && brackets.Count > 0)
  31.                     {
  32.                         if (((int)item == (int)(brackets.Peek() + 1)) || ((int)item == ((int)(brackets.Peek() + 2))))
  33.                         {
  34.                             brackets.Pop();
  35.                         }
  36.                         else
  37.                         {
  38.                             isBalanced = false;
  39.                         }
  40.                     }
  41.                     else
  42.                     {
  43.                         isBalanced = false;
  44.                     }
  45.                 }              
  46.             }
  47.  
  48.             if ((isBalanced) && brackets.Count.Equals(0))
  49.             {
  50.                 Console.WriteLine("YES");
  51.             }
  52.             else
  53.             {
  54.                 Console.WriteLine("NO");
  55.             }
  56.         }
  57.     }
  58. }
Advertisement
RAW Paste Data Copied
Advertisement