fork download
  1. /* وَقُلْ رَبِّ زِدْنِي عِلْمًاً */
  2. #include <iostream>
  3. #include <algorithm>
  4. #include <cmath>
  5. #include <string>
  6. #include <iomanip>
  7. #include <stack>
  8. #include <set>
  9. #include <queue>
  10. #include <deque>
  11. #include <vector>
  12. #include <fstream>
  13. #include <cctype>
  14. #include <utility>
  15.  
  16. #define ll long long
  17. #define ld long double
  18. #define sz(v) ((int)(v).size())
  19. #define all(v) ((v).begin()),((v).end())
  20. #define setp(n) cout << fixed << setprecision(n)
  21. #define O_o ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
  22. #define yes cout << "yes\n"
  23. #define no cout << "no\n"
  24. #define fi(nn) for(ll i = 0; i < (nn); i++)
  25. #define fj(nn) for(ll j = 0; j < (nn); j++)
  26. #define fl(nn) for (ll i = nn - 1; i >= 0; i--)
  27. #define ffi(nn,mm) for(ll i = 0; i < (nn); i++)for(ll j = 0; j < (mm); j++)
  28. #define wt ll t;cin>>t;while(t--)
  29. #define null NULL
  30.  
  31. using namespace std;
  32. int main()
  33. {
  34. O_o
  35. string s;
  36. while (getline(cin, s)) {
  37. bool tr1 = 1, tr2 = 0;
  38. deque<char>v;
  39. fi(sz(s)) {
  40. if (s[i] == '[') {
  41. tr1 = 1;
  42. tr2 = 0;
  43. }
  44. else if (s[i] == ']') {
  45. tr1 = 0;
  46. tr2 = 1;
  47. }
  48. else {
  49. if (tr1) {
  50. v.push_front(s[i]);
  51. }
  52. else if (tr2) {
  53. v.push_back(s[i]);
  54. }
  55. }
  56. }
  57. fi(sz(v)) {
  58. cout << v[i];
  59. }
  60. cout << '\n';
  61. }
  62. return 0;
  63. }
Success #stdin #stdout 0.01s 5288KB
stdin
Name[My_]_Is_Mohemd
[[]][][]I_Am_FrOm_AssiUt
stdout
_yMemaN_Is_Mohemd
I_Am_FrOm_AssiUt