import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return bool布尔型
*/
public boolean isValidString (String s) {
ArrayList list = new ArrayList<>();
for (int i = 0; i < s.length(); i++) {
String s1 = String.valueOf(s.charAt(i));
if (s1.equals("(") || s1.equals("*")) {
list.add(s1);
} else {
System.out.println(list);
if (list.size() == 0) {
return false;
}
int flag = -1;
for (int j = list.size() - 1; j >= 0; j --) {
if (list.get(j).equals("(")) {
list.remove(j);
flag = 1;
break;
}
}
if (flag == -1) {
list.remove(list.size() - 1);
}
}
}
if (list.size() == 0) {
return true;
}
if (list.get(list.size() - 1).equals("(")) {
return false;
}
int xingCount = 1;
for (int i = list.size() - 2; i >= 0; i--) {
if (list.get(i).equals("*")) {
xingCount ++;
} else {
xingCount --;
if (xingCount < 0) {
return false;
}
}
}
return true;
}
}