|
|
Problem hidden
This problem was hidden by Editorial Board member probably because it has incorrect language
version or invalid test data, or description of the problem is not clear.
Từ tập các bài có trên SPOJ (acm)
7036. Tráo bài
Mã bài: NKCARD
|
CARD
Alice là người chia bài tại bàn chơi Poker trong một Casino ResortWorld vừa mới mở. Cũng giống như những người mới vào nghề khác, cô có 2 cách di chuyển một quân bài khi tráo bài:
- Cách A: Cô lấy 1 quân bài ở trên cùng và chuyển nó xuống dưới cùng bộ bài
- Cách B: Cô lấy 1 quân bài ở vị trí thứ hai từ trên xuống và chuyển nó xuống dưới cùng của bộ bài.
Ban ðầu, Alice có m quân bài (chú ý rằng m có thể nhiều hơn 52 quân bài của một bộ bài chuẩn), mỗi quân bài ðược ðánh nhãn: quân bài trên cùng ðược ðánh nhãn 0 và quân bài dưới cùng ðược ðánh nhãn m – 1.
Xét một dãy các thao tác di chuyển: ABBABA
Bảng dưới ðây thể hiện bộ bài 6 quân sau khi áp dụng mỗi bước chuyển trong dãy thao tác:
|
Thao tác
|
A
|
B
|
B
|
A
|
B
|
A
|
Kết thúc
|
|
Vị trí các quân bài sau mỗi thao tác di chuyển.
|
0
|
1
|
1
|
1
|
4
|
4
|
0
|
|
1
|
2
|
3
|
4
|
5
|
0
|
2
|
|
2
|
3
|
4
|
5
|
0
|
2
|
3
|
|
3
|
4
|
5
|
0
|
2
|
3
|
1
|
|
4
|
5
|
0
|
2
|
3
|
1
|
5
|
|
5
|
0
|
2
|
3
|
1
|
5
|
4
|
Yêu cầu ðặt ra cho chúng ta là: cho trước một dãy thao tác di chuyển và 1 số k; trong ðó 0 < k < m – 1, hãy cho biết nhãn của các quân bài thứ k – 1, thứ k và thứ k + 1, tính từ trên xuống, của bộ bài sau khi áp dụng các thao tác di chuyển. Ở ðây, quân bài trên cùng có nhãn là quân bài thứ 0. Ví dụ như trên, nếu k = 3 thì câu trả lời là “3 1 5”.
Input
Chứa hai số m và k (0 < k < m, 3 <= m <= 1.000.000) và dãy thao tác ðược viết trên một dòng. Kí tự cuối cùng của input là kí tự chấm “.”, ðó là dấu hiệu kết thúc của input. Tổng số bước di chuyển trong ðoạn từ 1 ðến 100.000. Trong ví dụ trên của chúng ta là:
6 3 ABBABA.
Output
Chương trình của bạn phải viết ra nhãn của các quân bài thứ k – 1, quân bài thứ k và quân bài thứ k + 1 tính từ trên xuống dưới của bộ bài sau khi áp dụng việc di chuyển các quân bài theo dãy thao tác. Trong ví dụ trên thì output của chúng ta sẽ là:
3 1 5
Example
Input: 6 3 ABBABA. Output: 3 1 5
| Được gửi lên bởi: | Vương Trung Hiếu Nghĩa |
| Ngày: | 2010-08-08 |
| Thời gian chạy: | 1s
|
| Giới hạn mã nguồn: | 50000B |
| Ngôn ngữ cho phép: | Tất cả ngoại trừ: AWK CLOJ ERL F# GO PERL 6 PYTH 3.1.2 SCALA SED TCL |
| Nguồn bài: | noi 2010 Singapore |
|
|
|
|