nowcoder_Kanbun_stack

nowcoder_Kanbun_stack

//
#include<bits/stdc++.h>
using namespace std;

int main()
{
    string s;
    int n,i;

    while( cin>>n )
    {
        stack<int> sk;
        vector<int> v;
        
        cin>>s;
        for( i=0;i<n;i++ )
        {
            if( s[i]=='-' ) v.push_back( i+1 );
            else if( s[i]==')' ) { v.push_back( i+1 ); v.push_back( sk.top() ); sk.pop(); }
            else if( s[i]=='(' ) sk.push( i+1 );
        }
        for( i=0;i<v.size();i++ )
        {
            if( i ) cout<<" ";
            cout<<v[i];
        }
        cout<<endl;
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_63173957/article/details/124807768