Cho một bảng hình chữ nhật có \(N\) dòng và \(M\) cột gồm các chữ cái in thường từ \(‘a’\) đến \(‘z’\). Bảng này có tính chất: ở mỗi cột, khi ghép các kí tự từ trên xuống dưới sẽ thu được một xâu đại diện và trong bảng các xâu đại diện là đôi một khác nhau.
Yêu cầu: hãy tìm cách xoá nhiều nhất các dòng (lần lượt từ dòng đầu tiên xuống dưới) của bảng để thu được một bảng mới vẫn đảm bảo tính chất trên. (Chỉ được xoá tối đa \(N - 1\) dòng)
Dữ liệu vào:
Dòng đầu tiên chứa hai số nguyên \(N\) và \(M\) cách nhau một dấu cách;
\(N\) dòng sau, mỗi dòng chứa một xâu có dộ dài \(M\).
Kết quả: Ghi một số duy nhất là kết quả của bài toán.
Ví dụ:
Input | Output | Giải thích |
---|---|---|
5 4 qwpt abcf bvoa abka bbhb | 2 | Xoá tối đa 2 dòng đầu. Nếu xoá cả dòng thứ 3 thì cột đầu tiên và cột cuối cùng sẽ giống nhau. (không thoả mãn tính chất của bảng) |
Giới hạn:
Có 40% số test tương ứng với số điểm có \(N,\ M \leq 100\);
30% số test khác tương ứng với số điểm có \(N,\ M \leq 500\);
30% số test còn lại tương ứng với số điểm có \(N,\ M \leq 5000\).
Code tích cực |
---|
Trong 24h |
|
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38905 |