Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<cstdio>#include<iostream>#include<cstring>#define ll long long#define M 1000009using namespace std;int a[M],f[M],n;ll b[M];char ch[M];ll dfs(int x){if(f[x])return b[x];int a1=0;for(int i=x;i<=n;i++){a1+=a[i];if(a1==-1)break;if(a1==0){b[x]=dfs(i+1)+1;break;}}f[x]=1;return b[x];}int main(){scanf("%s",ch+1);