fork download
  1. #include <iostream>
  2. #include <algorithm>
  3. #include <deque>
  4. using namespace std;
  5. const int sz = 1000 + 4 ;
  6. int q , x ;
  7. string s ;
  8. deque<int> dq ;
  9. bool ok ;
  10. int main() {
  11. cin>>q ;
  12. while(q--)
  13. {
  14. cin>>s;
  15. if(s == "toFront")
  16. {
  17. cin>>x ;
  18. if(ok ==1)
  19. dq.push_back(x) ;
  20. else
  21. dq.push_front(x) ;
  22. }
  23. else if(s == "push_back")
  24. {
  25. cin>>x ;
  26. if(ok ==1)
  27. dq.push_front(x) ;
  28. else
  29. dq.push_back(x) ;
  30. }
  31. else if(s == "front")
  32. {
  33. if(dq.empty())
  34. {
  35. cout<<"No job for Ada?\n" ;
  36. }
  37. else
  38. {
  39. if(ok == 1)
  40. {
  41. cout<<dq.back()<<'\n';
  42. dq.pop_back();
  43. }
  44. else
  45. {
  46. cout<<dq.front()<<'\n';
  47. dq.pop_front();
  48. }
  49. }
  50. }
  51. else if(s == "back")
  52. {
  53. if(dq.empty())
  54. {
  55. cout<<"No job for Ada?\n" ;
  56. }
  57. else
  58. {
  59. if(ok == 1)
  60. {
  61. cout<<dq.front()<<'\n';
  62. dq.pop_front();
  63. }
  64. else
  65. {
  66. cout<<dq.back()<<'\n';
  67. dq.pop_back();
  68. }
  69. }
  70. }
  71. else
  72. {
  73. ///reverse(dq.begin() , dq.end()) ;
  74. if(ok == 0)
  75. ok = 1 ;
  76. else
  77. ok = 0 ;
  78. }
  79. }
  80.  
  81. return 0;
  82. }
Success #stdin #stdout 0.01s 5384KB
stdin
Standard input is empty
stdout
Standard output is empty