sacgajcvs

Untitled

Dec 26th, 2019
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.87 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. #define ll long long
  3. #define rep(i,a,b) for(ll i=a;i<b;i++)
  4. #define vi vector<ll>
  5. #define pii pair<ll,ll>
  6. #define hell 1000000007
  7. #define N 100005
  8. #define F first
  9. #define S second
  10. using namespace std;
  11.  
  12. string fun(string c)
  13. {
  14. string s="";
  15. for(ll i=0;i<c.length();i++)
  16. {
  17. if(c[i]==' ')
  18. continue;
  19. else
  20. s+=c[i];
  21. }
  22. return s;
  23. }
  24.  
  25. void solve()
  26. {
  27. string test;
  28. getline(cin,test);
  29. string s;
  30. s=fun(test);
  31. ll n=s.length();
  32. cout<<s<<endl;
  33. ll p[n]={0};
  34. stack <pii> st;
  35. rep(i,0,n){
  36. if(s[i]=='(')
  37. st.push({'(',i});
  38. else if(s[i]==')'){
  39. if(st.top().S==i-1){
  40. p[i]=1;
  41. p[i-1]=1;
  42. }
  43. else if((s[st.top().S+1]=='(')&&(s[i-1]==')')){
  44. p[i]=1;
  45. p[st.top().S]=1;
  46. }
  47. st.pop();
  48. }
  49. }
  50. rep(i,0,n) if(p[i]==0) cout<<s[i];
  51. return;
  52. }
  53.  
  54. int main()
  55. {
  56. int TESTS=1;
  57. // cin>>TESTS;
  58. while(TESTS--)
  59. solve();
  60. return 0;
  61. }
Advertisement
Add Comment
Please, Sign In to add comment