Skip to content

Instantly share code, notes, and snippets.

@josehenriqueventura
Created May 27, 2019 21:25
Show Gist options
  • Save josehenriqueventura/9cb65318a5e48506d8646d9ef522a7f0 to your computer and use it in GitHub Desktop.
Save josehenriqueventura/9cb65318a5e48506d8646d9ef522a7f0 to your computer and use it in GitHub Desktop.
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String demiliters = scanner.nextLine();
System.out.println(isDelimitersBalanced(demiliters) ? "True" : "False");
/* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution. */
}
public static boolean isDelimitersBalanced(String demiliters){
if(demiliters.length() % 2 == 1){
return false;
}
char[] delimitersChars = demiliters.toCharArray();
int[] delimitersFrequency = new int[3];
for(int i=0 ; i < delimitersChars.length ; i++){
char delimiter = delimitersChars[i];
if('(' == delimiter || ')' == delimiter){
delimitersFrequency[0]++;
}else if('{' == delimiter || '}' == delimiter){
delimitersFrequency[1]++;
}else if('[' == delimiter || ']' == delimiter){
delimitersFrequency[2]++;
}
}
boolean isDelimitersBalanced=true;
for(int i=0 ; i < delimitersFrequency.length ; i++){
if(delimitersFrequency[i] % 2 == 1){
isDelimitersBalanced=false;
break;
}
}
return isDelimitersBalanced;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment