Advertisement
IvaAnd

Ex06_BalancedParentheses

Sep 18th, 2020
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. import java.util.ArrayDeque;
  2. import java.util.Scanner;
  3.  
  4. public class Ex06_BalancedParentheses {
  5. public static void main(String[] args) {
  6. Scanner scanner = new Scanner(System.in);
  7.  
  8. String roundBrackets = "()";
  9. String squareBrackets = "[]";
  10. String curlyBrackets = "{}";
  11.  
  12. boolean isBalanced = false;
  13.  
  14. String[] lineBrackets = scanner.nextLine().split("");
  15.  
  16. ArrayDeque<String> brackets = new ArrayDeque<>();
  17.  
  18. for (int i = 0; i < lineBrackets.length / 2; i++) {
  19. brackets.push(lineBrackets[i]);
  20. }
  21. if (!brackets.isEmpty()) {
  22. for (int i = lineBrackets.length / 2; i < lineBrackets.length; i++) {
  23. String pair = brackets.pop() + lineBrackets[i];
  24. if (pair.equals(roundBrackets)
  25. || pair.equals(squareBrackets)
  26. || pair.equals(curlyBrackets)) {
  27. isBalanced = true;
  28. } else {
  29. isBalanced = false;
  30. break;
  31. }
  32. }
  33. }
  34. if (!isBalanced) {
  35. System.out.println("NO");
  36. } else {
  37. System.out.println("YES");
  38. }
  39.  
  40. }
  41. }
  42.  
  43.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement