import java.util.*;

public class Parenthesis {
    public boolean chkParenthesis(String A, int n) {
        if(n%2!=0){
            return false; //奇数的情况
        }
        Stack<Character> stack=new Stack<>();  //栈
        for(int i=0;i<A.length();i++){ //遍历字符串
        char s=A.charAt(i);//拿到的字符
        if(s=='('){ //左括号,则添加
            stack.push(s); 
        }else if(s==')'){ //遇到右括号则出栈,但是在出栈前要考虑栈是不是有元素
        if(stack.isEmpty()){ //栈为空非法 --->右括号先于左括号出现导致栈为空
        return false;
        }
        stack.pop();//正常情况下,出栈
        }else{ //遇到不是(  ) 的情况,则代表出现了字母,非法
            return false;
        }
        
    }
    return stack.isEmpty(); //最后只要返回栈是否为空即可,为空,则代表全部抵消,不为空,则代表有多余
}
}