Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- #define ll long long
- #define rep(i,a,b) for(ll i=a;i<b;i++)
- #define vi vector<ll>
- #define pii pair<ll,ll>
- #define hell 1000000007
- #define N 100005
- #define F first
- #define S second
- using namespace std;
- string fun(string c)
- {
- string s="";
- for(ll i=0;i<c.length();i++)
- {
- if(c[i]==' ')
- continue;
- else
- s+=c[i];
- }
- return s;
- }
- void solve()
- {
- string test;
- getline(cin,test);
- string s;
- s=fun(test);
- ll n=s.length();
- cout<<s<<endl;
- ll p[n]={0};
- stack <pii> st;
- rep(i,0,n){
- if(s[i]=='(')
- st.push({'(',i});
- else if(s[i]==')'){
- if(st.top().S==i-1){
- p[i]=1;
- p[i-1]=1;
- }
- else if((s[st.top().S+1]=='(')&&(s[i-1]==')')){
- p[i]=1;
- p[st.top().S]=1;
- }
- st.pop();
- }
- }
- rep(i,0,n) if(p[i]==0) cout<<s[i];
- return;
- }
- int main()
- {
- int TESTS=1;
- // cin>>TESTS;
- while(TESTS--)
- solve();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment