Ada và Queue

Xem PDF

Điểm: 100 Thời gian: 1.0s Bộ nhớ: 1000M Input: bàn phím Output: màn hình

Ada là một con bọ rùa rất bận rộn. Cô ấy có nhiều việc phải làm, và cô ấy thường cho các công việc này vào một hàng đợi. Tuy nhiên, Ada khá do dự — đôi khi cô ấy thao tác ở đầu hàng, đôi khi ở cuối, và đôi khi lại đảo ngược toàn bộ hàng đợi.


Input

  • Dòng đầu tiên chứa một số nguyên Q — số lượng truy vấn \((1 ≤ Q ≤ 10^6)\).
  • Mỗi truy vấn là một trong các lệnh sau:

    • back — In ra phần tử ở cuối hàng và xóa nó.
    • front — In ra phần tử ở đầu hàng và xóa nó.
    • reverse — Đảo ngược thứ tự toàn bộ hàng đợi.
    • push_back N — Thêm phần tử N vào cuối hàng.
    • toFront N — Thêm phần tử N vào đầu hàng.
  • Mọi số N đều thỏa \(0 ≤ N ≤ 100\).


Output

  • Với mỗi truy vấn back hoặc front, in ra giá trị tương ứng.
  • Nếu hàng đợi rỗng tại thời điểm thực hiện truy vấn, in ra:

    No job for Ada?
    

Ví dụ

Test 1

Input
15
toFront 93
front
back
reverse
back
reverse
toFront 80
push_back 53
push_back 50
front
front
reverse
push_back 66
reverse
front
Output
93
No job for Ada?
No job for Ada?
80
53
66

Bình luận

Không có bình luận nào.