Ads Here

Saturday, June 4, 2022

Balanced-Brackets/Solution.java

 import java.io.*;

import java.math.*;

import java.security.*;

import java.text.*;

import java.util.*;

import java.util.concurrent.*;

import java.util.function.*;

import java.util.regex.*;

import java.util.stream.*;

import static java.util.stream.Collectors.joining;

import static java.util.stream.Collectors.toList;


class Result {


    /*

     * Complete the 'isBalanced' function below.

     *

     * The function is expected to return a STRING.

     * The function accepts STRING s as parameter.

     */


    public static String isBalanced(String s) {

    // Write your code here

        Stack<Character> stack=new Stack<Character>();

        for(char c:s.toCharArray()){

            if(c=='(')

                stack.push(')');

            else if(c=='{')

               stack.push('}');

            else if(c=='[')

                stack.push(']');

            else if(stack.isEmpty()||stack.pop()!=c)

                return "NO";

        }   

        return stack.isEmpty() == true ? "YES" : "NO";


    }


}


public class Solution {

    public static void main(String[] args) throws IOException {

        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));

        BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(System.getenv("OUTPUT_PATH")));


        int t = Integer.parseInt(bufferedReader.readLine().trim());


        IntStream.range(0, t).forEach(tItr -> {

            try {

                String s = bufferedReader.readLine();


                String result = Result.isBalanced(s);


                bufferedWriter.write(result);

                bufferedWriter.newLine();

            } catch (IOException ex) {

                throw new RuntimeException(ex);

            }

        });


        bufferedReader.close();

        bufferedWriter.close();

    }

}

No comments:

Post a Comment