关注
package test; import java.util.Scanner; public class Main16 { public static int[] addFlag(char[] chs) { int[] left = new int[chs.length]; int[] list = new int[chs.length]; int leftFlag = 0; int listFlag = 0; int times = 1; for(int i=0;i<chs.length;i++) { if(chs[i] == '(') { left[leftFlag] = times; times++; leftFlag++; list[listFlag] = left[leftFlag-1]; listFlag++; }else if(chs[i] == ')') { list[listFlag] = left[leftFlag-1]; listFlag++; leftFlag--; } } return list; } public static int count(int[] list, int start, int end) { if(start >= end) { return 0; } int ans = 0; while(start < end) { if(list[start] == list[end]) { ans++; start++; end--; }else{ break; } } int temp = 1; for(int i=ans;i>=1;i--) { temp *= i; } ans = temp; /*******递归*******/ int copyend = end - 1; while((copyend > start) && (list[copyend] != list[start])) { copyend--; } ans += count(list, start, copyend); ans += count(list, copyend+1, end); return ans; } public static void main(String[] args) { Scanner scan = new Scanner(System.in); String str = scan.nextLine(); char[] chs = str.toCharArray(); int[] list = addFlag(chs); int ans = count(list, 0, list.length-1); System.out.println(ans); } }
查看原帖
点赞 2
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 考研对你找工作产生了哪些影响? #
11387次浏览 119人参与
# 找实习你看重大厂光环还是业务方向 #
5459次浏览 48人参与
# 聊聊这家公司值得去吗 #
250438次浏览 2310人参与
# 摸鱼被leader发现了怎么办 #
57603次浏览 342人参与
# 职场捅娄子大赛 #
365584次浏览 3747人参与
# 大家实习每天都在干啥 #
81018次浏览 499人参与
# 实习想申请秋招offer,能不能argue薪资 #
139709次浏览 889人参与
# 我是XXX,请攻击我最薄弱的地方 #
28230次浏览 278人参与
# 打杂的实习你会去吗? #
110810次浏览 966人参与
# kpi面有什么特征 #
39089次浏览 320人参与
# 机械人晒出你的简历 #
76090次浏览 635人参与
# 我发现一个规律 #
7984次浏览 70人参与
# 电信求职进展汇总 #
9266次浏览 79人参与
# 你有哪些缓解焦虑的方法? #
6756次浏览 231人参与
# 海康威视求职进展 #
79100次浏览 457人参与
# 没有合适的工作,你会先找个干着,还是考公考研 #
112021次浏览 1114人参与
# 为了找工作你投递了多少公司? #
16254次浏览 239人参与
# 校招第一份工作你干了多久? #
75339次浏览 367人参与
# 机械只有读研才有出路吗? #
20173次浏览 230人参与
# 硬件开发岗知多少 #
11447次浏览 116人参与