记录编号 |
350966 |
评测结果 |
AAAAAAAWWWWWA |
题目名称 |
括号序列 |
最终得分 |
61 |
用户昵称 |
csgc0131123 |
是否通过 |
未通过 |
代码语言 |
C++ |
运行时间 |
0.003 s |
提交时间 |
2016-11-16 08:24:18 |
内存使用 |
0.31 MiB |
显示代码纯文本
#define N 150
#include<cmath>
#include<cstdlib>
#include<iostream>
using namespace std;
#include<cstdio>
#include<cstring>
int a[N],n;
char s[N];
int main()
{
freopen("bracket.in","r",stdin);
freopen("bracket.out","w",stdout);
scanf("%s",s+1);
int lens=strlen(s+1);
for(int i=1;i<=lens;++i)
{
if(s[i]=='[') a[i]=-2;
if(s[i]=='(') a[i]=-1;
if(s[i]==')') a[i]=1;
if(s[i]==']') a[i]=2;
}
int j=0;
for(int i=1;i<=lens;++i)
{
if(a[i]<0) j=i;
else if(a[i]+a[j]==0)
{
a[i]=0;
a[j]=0;
j--;
while(j>0&&a[j]>=0) j--;
}
}
for(int i=1;i<=lens;++i)
{
if(a[i]==0) printf("%c",s[i]);
if(abs(a[i])==2) printf("[]");
else printf("()");
}
fclose(stdin);
fclose(stdout);
return 0;
}