Inna và dãy số
Đề bài
Mô tả
Ban đầu có một dãy rỗng. Người ta chọn trước số nguyên , rồi thực hiện lần lượt thao tác. Mỗi thao tác là một trong ba loại:
- Thêm số 0: thêm giá trị vào cuối dãy .
- Thêm số 1: thêm giá trị vào cuối dãy .
- Xoá (đập bàn): các phần tử đang ở vị trí thứ (tính từ đầu dãy) đồng thời bị loại khỏi dãy. Ở đây là số lớn nhất sao cho không vượt quá độ dài hiện tại của dãy. Nếu đã lớn hơn độ dài hiện tại thì không có phần tử nào bị xoá.
Lưu ý các vị trí được xác định theo dãy trước khi thực hiện thao tác xoá (tất cả bị loại cùng lúc), sau đó các phần tử còn lại dồn lại giữ nguyên thứ tự tương đối.
Hãy cho biết dãy sau khi thực hiện xong toàn bộ thao tác.
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và .
- Dòng thứ hai chứa số nguyên phân biệt .
- dòng tiếp theo, mỗi dòng chứa một số nguyên mô tả thao tác theo thứ tự thời gian: nghĩa là thao tác xoá, nghĩa là thêm số , nghĩa là thêm số .
Dữ liệu ra
In ra dãy các chữ số và là các phần tử của dãy sau khi thực hiện xong tất cả thao tác, theo thứ tự từ đầu đến cuối dãy.
Nếu dãy rỗng, in ra Poor stack!.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 10 3 1 3 6 -1 1 1 0 0 -1 0 1 -1 1 |
011 | Thao tác đầu là xoá khi dãy đang rỗng nên không có gì xảy ra. Sau các thao tác thêm và hai lần xoá tiếp theo (mỗi lần loại phần tử ở vị trí và vì dãy chưa đủ dài tới ), dãy cuối cùng còn lại 0, 1, 1. |
| 2 1 1 1 -1 |
Poor stack! | Thêm số rồi xoá: phần tử ở vị trí bị loại, dãy trở nên rỗng. |
Bình luận