fork(1) download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int arepair(char opening,char closing)
  5. {
  6. if((opening == '(' || opening == '{' || opening == '[') && opening+1 == closing)
  7. return 1;
  8. else
  9. return 0;
  10. }
  11. int main()
  12. {
  13. stack<char>st;
  14. int t,i,l,flag=0;
  15. cin>>t;
  16. while(t--)
  17. {
  18. int i;
  19. char s[100];
  20. cin>>s;
  21. for(i=0;s[i]!='\0';i++)
  22. {
  23. if(s[i]=='(' || s[i]=='{' || s[i]=='[')
  24. st.push(s[i]);
  25. else if(s[i]==')' || s[i]=='}' || s[i]==']')
  26. {
  27. if(!arepair(st.top(), s[i]))
  28. {
  29. flag=1;
  30. break;
  31. }
  32. else
  33. {
  34. st.pop();
  35. }
  36. }
  37. }
  38. if(st.size()!=0)
  39. flag=1;
  40. else
  41. flag=0;
  42.  
  43. if(flag==1)
  44. cout<<"Not Balanced"<<endl;
  45. else
  46. cout<<"Balanced"<<endl;
  47. }
  48. return 0;
  49. }
Success #stdin #stdout 0s 16064KB
stdin
1
({)}
stdout
Not Balanced