zoukankan      html  css  js  c++  java
  • 括号配对

    括号配对问题

    时间限制:3000 ms  |  内存限制:65535 KB

    难度:3

    描述

    现在,有一行括号序列,请你检查这行括号是否配对。

    输入

    第一行输入一个数N0<N<=100,表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[","]","(",")"四种字符

    输出

    每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No

    样例输入

    3

    [(])

    (])

    ([[]()])

    样例输出

    No

    No

    Yes

    import java.util.*;
    public class Main {
        
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            Scanner sc=new Scanner(System.in);
            int n=sc.nextInt();
            while(n-->0){
                boolean flag=true;
            String str=sc.next();
            char ch[]=str.toCharArray();
            String s[]=new String[str.length()];
            for(int i=0;i<str.length();i++){
                s[i]=String.valueOf(ch[i]);
            }
               Stack<String> stack=new Stack<String>();
               for(int i=0;i<s.length;i++){
                   if(s[i].equals("(")||s[i].equals("["))
                       stack.push(s[i]);
                   else if(s[i].equals(")"))
                   {
                       if(stack.isEmpty() || !stack.peek().equals("(")) {flag=false;break;}
                       else 
                           stack.pop();  
                   }
                   else if(s[i].equals("]"))
                   {
                       if(stack.isEmpty() || !stack.peek().equals("[")){flag=false;break;}
                       else
                           stack.pop();
                       
                       
                   }
               
               }
               
               if(!stack.isEmpty())flag=false;
               
               if(flag)
                   System.out.println("Yes");
               else
                   System.out.println("No");
            
              
                }
                
                    sc.close();
        }
    }
  • 相关阅读:
    # 漏洞挖掘技巧清单 #
    CVE-2020-0796——SMBV3客户端/服务端远程代码执行漏洞(远程代码执行+权限提升)
    SSH公钥详细介绍及拓展
    滑动窗口(数据结构)
    反素数解析
    树状数组的基本操作
    Rochambeau POJ
    一般图最大匹配
    2020牛客暑期多校训练营(第一场)H Minimum-cost Flow
    A Bug's Life POJ
  • 原文地址:https://www.cnblogs.com/watchfree/p/5313650.html
Copyright © 2011-2022 走看看