fork download
  1. #include <bits/stdc++.h>
  2. #define ll long long
  3. using namespace std;
  4. const int mod = 1e9+7;
  5. int dx[] = { 0, 0, 1, -1, 1, -1, 1, -1 };
  6. int dy[] = { 1, -1, 0, 0, -1, 1, 1, -1 };
  7. void file()
  8. {
  9. //#ifndef ONLINE_JUDGE
  10. // freopen("output.txt", "w", stdout);
  11. //#endif !ONLINEJUDGE
  12. ios::sync_with_stdio(0);
  13. cin.tie(0);
  14. cout.tie(0);
  15. }
  16. int main(){
  17. file();
  18. int n,q;cin>>n>>q;
  19. string s;cin>>s;
  20. while(q--){
  21. string ss;cin>>ss;
  22. if(ss=="pop_back")s.pop_back();
  23. else if(ss=="front")cout<<s.front()<<endl;
  24. else if(ss=="back")cout<<s.back()<<endl;
  25. else if(ss=="sort"){
  26. int l,r;cin>>l>>r;l--;
  27. sort(s.begin()+l,s.begin()+r);
  28. }
  29. else if(ss=="reverse"){
  30. int l,r;cin>>l>>r;l--;
  31. reverse(s.begin()+l,s.begin()+r);
  32. }
  33. else if(ss=="print"){int x;cin>>x;cout<<s[x--]<<endl;}
  34. else if(ss=="substr"){
  35. int l,r;cin>>l>>r;
  36. cout<<s.substr(--l,r)<<endl;
  37. }
  38. else {char c;cin>>c;s.push_back(c);}
  39. }
  40. return 0;
  41. }
Success #stdin #stdout 0.01s 5276KB
stdin
18 8
assiutinupperegypt
substr 1 6
sort 5 8
pop_back
back
reverse 1 6
front
push_back i
print 4
stdout
assiut
p
n
s