题意:
给出一个只有
的字符串,删除几组子简单序列使得剩下的字符串也变成简单序列。简单序列的定义是类似
这种形式的。
我们很显然可以看出答案无非
或者
,我们就每次遇到一个
就倒着遍历找到第一个
一起删除就行。
AC代码:
char a[1001];
int n, m;
int main()
{
ss(a + 1);
int ans = 0;
int len = strlen(a + 1);
rep(i, 1, len)
{
if (a[i] == '(')
{
per(j, len, i + 1)
{
if (a[j] == ')')
{
a[j] = '0';
a[i] = '0';
ans += 2;
break;
}
}
}
}
if (ans != 0)
{
printf("1\n%d\n", ans);
rep(i, 1, len)
{
if (a[i] == '0')
printf("%d ", i);
}
}
else
printf("0");
return 0;
}