关注
我这个分治的思路
//C
#pragma GCC optimize(2)
(1282)#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> pii;
typedef vector<int> vi;
const int maxn = 4e5 + 10, mod = 1e9 + 7, inf = 0x3f3f3f3f;
char s[maxn];
int n, match[maxn];
ll dfs(int l, int r){
if(l + 1 == r) return 2;
int now = l;
ll ans = 1;
if(match[l] == r){
ans = (dfs(l+1, r-1) + 1) % mod;
}else {
while(now <= r){
ans = (ans * dfs(now, match[now])) % mod;
now = match[now] + 1;
}
}
return ans % mod;
}
void init(){
stack<int> st;
for(int i = 1; i <= n; i++){
if(s[i] == '(')
st.push(i);
else {
match[st.top()] = i;
st.pop();
}
}
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cin >> (s + 1);
n = strlen(s + 1);
init();
cout << dfs(1, n) << '\n';
return 0;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
- 1... Java后端开发需要理解和背的八股文整理3.8W
- 2... “我想了想,你去哪我都想和你在一起”2.0W
- 3... 💌【520限时活动公告】牛爱网高甜营业!你的恋爱通关秘籍已送达~1.7W
- 4... 5月16日早上莫名被美团捞起来了1.3W
- 5... 记录一下这两个月面试以来遇到的手撕题1.2W
- 6... 搬砖日常。不如跑路1.2W
- 7... 在华为od干的要猝死了9820
- 8... 离开这座让我伤心的城市了💔,希望以后一切顺利吧!#补录# #裁应届生# #捡漏# #minimax#8456
- 9... 大二,想要去实习(计算机专业)6512
- 10... 【双非本】上岸字节后端 | 接单 | 奖学金 | 做自媒体,分享下主包的大学四年 ✨🎓5434
正在热议
更多
# 牛油的搬砖plog #
29672次浏览 149人参与
# 这些公司卡简历很严格 #
26751次浏览 117人参与
# 一人一个landing小技巧 #
25579次浏览 484人参与
# 大学最后一个寒假,我想…… #
30868次浏览 309人参与
# 正在实习的你,有转正机会吗? #
371873次浏览 2863人参与
# 写简历别走弯路 #
723658次浏览 7880人参与
# 我在牛爱网找对象 #
180449次浏览 1374人参与
# 运营人求职交流聚集地 #
128008次浏览 962人参与
# 硬件兄弟们 甩出你的华为奖状 #
100547次浏览 675人参与
# 520告白墙 #
23590次浏览 377人参与
# 求职你最看重什么? #
68040次浏览 381人参与
# 电网笔面经互助 #
31834次浏览 317人参与
# 找工作的破防时刻 #
28008次浏览 420人参与
# 面试被问第一学历差时该怎么回答 #
123394次浏览 769人参与
# 为什么那么多公司毁约 #
163918次浏览 1227人参与
# 运营每日一题 #
67980次浏览 655人参与
# 数字马力求职进展汇总 #
171950次浏览 1454人参与
# 查收我的offer竞争力报告 #
177185次浏览 1083人参与
# 腾讯音乐求职进展汇总 #
86577次浏览 487人参与
# 我发现一个规律 #
3743次浏览 34人参与