# 第二题,我是用栈做的。。。。 import java.util.Scanner; import java.util.Stack; public class Main {     public static void main(String[] args) {         Scanner sc = new Scanner(System.in);         String s = sc.nextLine();         Stack<Character> st = new Stack<>();         char[] ch = s.toCharArray();         for(int i=0;i<ch.length;i++) {             if(ch[i] == ')' || ch[i]==']' || ch[i] == '}') {                 StringBuilder sb = new StringBuilder();                 while(st.peek() != '(' && st.peek()!='[' && st.peek()!='{') {                     char c = st.pop();                     sb.append(c);                 }                 st.pop();                 int count = Integer.parseInt(st.pop().toString());                 for(int k=0;k<count;k++) {                     for(int j=sb.length()-1;j>=0;j--) {                         st.push(sb.charAt(j));                     }                 }             }             else {                 st.push(ch[i]);             }         }         StringBuilder sb1 = new StringBuilder();         while(!st.isEmpty())             sb1.append(st.pop());         System.out.println(sb1.toString());     } }
点赞 评论

相关推荐

牛客网
牛客企业服务