51nod 1791 合法括号子段 DP
思路: DP[i] 表示以i结尾的方案数,模拟一遍括号匹配过程就好了
代码:
#include<bits/stdc++.h> using namespace std; #define MEM(a,b) memset(a,b,sizeof(a)) #define PB push_back #define MP make_pair #define X first #define Y second #define bug puts("bug"); typedef long long ll; typedef pair<ll,ll> pii; const double PI=acos(-1); const int maxn=1e6+10; string s; ll dp[maxn],t; int main(){ cin>>t; while(t--){ cin>>s; stack<int> S; dp[0]=0; for(int i=0;i<s.size();i++){ if(s[i]=='('){ S.push(i+1); } else{ if(S.empty()) continue; int f=S.top(); S.pop(); dp[i+1]+=dp[f-1]+1; } } ll sum=0; for(int i=0;i<=s.size();i++) sum+=dp[i],dp[i]=0; cout<<sum<<endl; } return 0; }
分类:
dp
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· DeepSeek火爆全网,官网宕机?本地部署一个随便玩「LLM探索」
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 上周热点回顾(1.20-1.26)
· 【译】.NET 升级助手现在支持升级到集中式包管理