1 条题解
-
1
#include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<string> #include<algorithm> #include<cmath> using namespace std; const int L=1000005; char s[L]; int l,f[L],Ans,id; int main() { scanf("%s",s+1); l=strlen(s+1); for(int i=2;i<=l;++i) if(s[i]=='('||s[i]=='[') continue; else if((s[i]==')'&&s[i-f[i-1]-1]=='(') ||(s[i]==']'&&s[i-f[i-1]-1]=='[')) { f[i]=f[i-1]+2+f[i-f[i-1]-2]; if(f[i]>Ans) Ans=f[i],id=i; } for(int i=id-Ans+1;i<=id;++i) printf("%c",s[i]); putchar('\n'); return 0; }
- 1
信息
- ID
- 908
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 3
- 标签
- 递交数
- 71
- 已通过
- 28
- 上传者