Hoán Đổi Để Thắng
Nộp bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
2.0s
Python 3
5.0s
Giới hạn bộ nhớ:
256M
Đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Go, Java, Kotlin, Pascal, Python, Scratch
Bác John có một chuỗi mục tiêu gồm ký tự và chuỗi , mỗi chuỗi gồm ký tự (đều là chữ cái tiếng Anh thường).
Có hai phép biến đổi:
- Hoán vị trong chuỗi: Chọn chuỗi và hai vị trí . Hoán đổi ký tự thứ và thứ của .
- Hoán vị giữa hai chuỗi: Chọn hai chuỗi và vị trí . Hoán đổi ký tự thứ của và .
Biến đổi thành sử dụng tối đa phép biến đổi. Đảm bảo luôn tồn tại lời giải.
Dữ liệu vào
- Dòng 1: Số nguyên — số bộ test ()
- Với mỗi bộ test:
- Dòng 1: Hai số nguyên và
- Dòng 2: Chuỗi mục tiêu
- dòng tiếp theo: Các chuỗi
Dữ liệu ra
Với mỗi bộ test:
- Dòng 1: Số nguyên () — số phép biến đổi
- dòng tiếp theo: Mỗi dòng mô tả một phép biến đổi theo định dạng
1 x p qhoặc2 x y k
Ràng buộc
- Tất cả chuỗi gồm chữ cái tiếng Anh thường
- Luôn tồn tại lời giải
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 3 6 banana nabana banana nnbaaa 5 3 abc def bca ghi jkl mno 3 5 abcde abcde abcde zzzzz |
1 1 1 1 3 5 1 2 3 1 2 1 2 1 1 2 3 2 2 1 2 2 2 1 2 3 0 |
Test 1: Hoán đổi vị trí 1 và 3 trong . Test 3: đã bằng . |
Ghi chú
- Test 2-6:
- Test 7-12: Không ràng buộc bổ sung
Bình luận