Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.time.LocalTime;
- import java.time.format.DateTimeFormatter;
- import java.util.*;
- public class Main {
- public static void main(String[] args) throws IOException {
- // Scanner scanner = new Scanner(System.in);
- var reader = new BufferedReader(new InputStreamReader(System.in));
- String sequence = reader.readLine();
- ArrayDeque<Character> stack = new ArrayDeque<>();
- boolean areBalanced = true;
- for (int i = 0; i < sequence.length(); i++) {
- char symbol = sequence.charAt(i);
- if (symbol == '{' || symbol == '[' || symbol == '(') {
- stack.push(symbol);
- } else {
- if (stack.isEmpty()) {
- areBalanced = false;
- break;
- }
- char last = stack.pop();
- if (last == '{' && symbol != '}') {
- areBalanced = false;
- break;
- } else if (last == '[' && symbol != ']') {
- areBalanced = false;
- break;
- } else if (last == '(' && symbol != ')') {
- areBalanced = false;
- break;
- }
- }
- }
- if (areBalanced) {
- System.out.println("YES");
- } else {
- System.out.println("NO");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement