Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
P193SUMA - Chuỗi con thú vị |
Time limit: 1s
Bạn được cung cấp một chuỗi gồm n ký tự, mỗi ký tự là 'B', 'V' hoặc 'H'.
Bạn cũng được cho một số nguyên k. Nhiệm vụ của bạn là thay đổi số lượng ký tự tối thiểu trong chuỗi s ban đầu để sau khi thay đổi sẽ có một chuỗi có độ dài k là chuỗi con của s và cũng là chuỗi con của chuỗi vô hạn "BVHBVHBVH ..." .
Chuỗi a là chuỗi con của chuỗi b nếu tồn tại số nguyên dương i sao cho a[1] = b[i], a[2] = b[i + 1], a[3] = b[i + 2], ..., a[a] = b[i + a -1]. Ví dụ: các chuỗi "BVHB", "H", "HB" là các chuỗi con của chuỗi vô hạn " BVHBVHBVH ..." trong khi "BH", "HBH" và "BBB" thì không.
Bạn phải trả lời q truy vấn độc lập.
Input
Dòng đầu tiên của đầu vào chứa một số nguyên T (1≤T≤2000) - số lượng truy vấn.
Với mỗi truy vấn:
Dòng đầu tiên của truy vấn chứa hai số nguyên n và k (1≤k≤n≤2000) - độ dài của chuỗi s và độ dài của chuỗi con.
Dòng thứ hai của truy vấn chứa một chuỗi s bao gồm n ký tự 'B', 'V' và 'H'.
Đảm bảo rằng tổng n trên tất cả các truy vấn không vượt quá 2000 (∑n≤2000).
Output
Đối với mỗi truy vấn in một số nguyên - số lượng ký tự tối thiểu bạn cần thay đổi trong chuỗi s ban đầu để sau khi thay đổi sẽ có một chuỗi con có độ dài k trong s cũng là một chuỗi con của chuỗi vô hạn "BVHBVHBVH..." .
Example
Input:
Output:
3
5 2
HVVVV
5 3
BHBVB
5 5
HHHBB
1
0
3
Được gửi lên bởi: | adm |
Ngày: | 2019-07-27 |
Thời gian chạy: | 1s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | ASM32-GCC ASM32 ASM64 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO JS-MONKEY KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA |