Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<iostream>#include<cstdio>#include<cstring>using namespace std;const int MAXN=1e5+10;char str[MAXN];int l[MAXN],lcnt;int r[MAXN];int main(){cin.sync_with_stdio(false);scanf("%s", 1+str);lcnt=0;memset(r,-1,sizeof(r));for(int i=1;str[i];i++){if(str[i]=='('){l[lcnt++]=i;}else{r[l[--lcnt]]=i;}}for(int i=1;str[i];i++){if(-1!=r[i]){printf("%d %d\n",i,r[i]);}}