首页
比赛
tracker
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
牛牛学括号
5条解析
开通博客写题解
小毅儿
发表于 2019-10-31 10:48:30
题目分析: 因为输入的多个括号是符合规则的,所以第一个字符一定是‘(’,先将其放入定义的stack中,在进行for循环中如果遇到‘(’就将其放入stack中,如果是‘)’,就抵消掉一个‘(’,并且sum的值*stack中元素的多少,再用pop将一个‘(’删除。可以理解为如果遇到右括号,则这个右括号可
展开全文
alex_liu09
发表于 2022-10-02 11:44:56
思路:统计当前左括号的数量 xxx,则当前右括号就有 xxx 种删除方法,根据乘法原理则可算出答案 #include<bits/stdc++.h> #define int long long #define mod 1000000007 using namespace std; stri
展开全文
尙尢
发表于 2021-12-16 22:14:01
思路: 根据样例分析,容易得知,右括号匹配左括号的不同方式跟左括号的个数有关。 有三个左括号即可随机匹配三种左括号...以此类推。 题目保证输入的字符串是合法的,那么第一个一定是左括号“(” 循环判断,当遇到“(”时候左括号计数+1,当遇到“)”时,先计算能有多少种匹配方法(与左括号数有关),再删
展开全文
修补骑士
发表于 2026-04-18 11:28:00
这里用回溯的话肯定炸了,我们观察会发现,实际上对于这种括号问题,每一个左边括号的所有匹配方案是由他右边的右括号决定的,有多少右括号就有多少种选择方式,我们就可以很简单的直接从右往左扫一遍,遇见了左括号就从已有的右括号里拿出一个(都可以配对),然后后续的再次配对由于顺序天然的避免了不可能的情况(也就是
展开全文
lkjhxx
发表于 2022-08-05 17:49:30
我是真的不会贪心!!! 一上来就寄,不想学贪心了 整体思路是:遇到左括号进栈,遇到右括号计算总数加出栈一个左括号 代码如下: s = input() i = 0 n, res = 0, 1 while i < len(s): if s[i] == '(': n +=
展开全文
查看本题
查看本题讨论
相关比赛
37302-中福会少年宫计算机活动中心2022暑假信奥集训2
进入比赛
37454-少年宫戴维练习(补)
进入比赛
39655-余老师csp模拟赛
进入比赛
49596-算法第一章习题2:贪心
进入比赛
50088-贪心,模拟,暴力,练习
进入比赛
等你来战
查看全部
2026牛客五一集训派对day1
报名截止时间:2026-05-01 17:00
2026牛客五一集训派对day2
报名截止时间:2026-05-02 17:00
2026牛客五一集训派对day3
报名截止时间:2026-05-03 17:00
牛客周赛 Round 142
报名截止时间:2026-05-03 21:00
2026牛客五一集训派对day4
报名截止时间:2026-05-04 17:00
2026牛客五一集训派对day5
报名截止时间:2026-05-05 17:00
2026深圳职业技术大学程序设计竞赛(同步赛)
报名截止时间:2026-05-10 18:00
哈尔滨华德学院第十七届程序设计竞赛(同步赛)
报名截止时间:2026-05-12 17:00
"壹零杯"第三届西华师范大学程序设计竞赛(同步赛)
报名截止时间:2026-05-24 14:30
汤圆头 Round 1
报名截止时间:2026-07-06 17:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题