fork download
  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4. import java.util.Stack;
  5. import java.util.StringTokenizer;
  6.  
  7. public class Main {
  8. public static void main(String[] args) throws IOException{
  9. int T, right=0;
  10. String msg;
  11.  
  12. StringBuilder sb = new StringBuilder();
  13. T = Integer.parseInt(br.readLine());
  14. Stack<Character> stack = new Stack<Character>();
  15.  
  16. while(T-- > 0) {
  17. st = new StringTokenizer(br.readLine(), "\n");
  18. msg = st.nextToken();
  19.  
  20. for(int x=0;x<msg.length();x++) {
  21. if(msg.charAt(x) == '(') {
  22. stack.push(msg.charAt(x));
  23. }
  24. else {
  25. if(stack.isEmpty() != true) {
  26. stack.pop();
  27. }
  28. else {
  29. right++;
  30. }
  31. }
  32. }
  33.  
  34. if(stack.isEmpty() == true) {
  35. if(right == 0) {
  36. sb.append("YES\n");
  37. }
  38. else {
  39. sb.append("NO\n");
  40. right=0; // 이 라인을 지우고 아래의 주석처리 부분을 살리면 정답이라고 나옴
  41. }
  42. }
  43. else {
  44. sb.append("NO\n");
  45. stack.clear();
  46. }
  47. //right=0;
  48. }
  49. System.out.print(sb);
  50. }
  51. }
Success #stdin #stdout 0.08s 47572KB
stdin
2
)(
()
stdout
NO
NO