Series ℍ𝔾𝔹ℂ𝕡𝕡_'s - 2026 - Contest #2 - Tiền tố đối xứng dài nhất
Xem PDF
Điểm:
1500
Thời gian:
0.5s
Bộ nhớ:
256M
Input:
strpf.inp
Output:
strpf.out
Sau ngày đầu tiên của với chuyến đi thích thú. Vào đêm, anh ấy nhìn thấy biển báo nhắc nhở trong khách sạn và nhận thấy điều đặc biệt và viết nên bài toán như sau: Cho hai xâu ký tự \(S\) và \(T\) có cùng độ dài \(N\) chỉ gồm các chữ cái latin tiếng Anh viết thường. Với mỗi vị trí \(i\) (\(1 \le i \le N\)), gọi \(P(S, i)\) là tiền tố độ dài \(i\) của xâu \(S\). Hãy tìm giá trị \(L\) lớn nhất sao cho:
- \(1 \le L \le N\).
- \(P(S, L)\) khi viết ngược lại sẽ khớp hoàn toàn với một xâu con độ dài \(L\) nào đó của \(T\).
Nói cách khác, bạn cần tìm số \(L\) lớn nhất sao cho tồn tại ít nhất một chỉ số \(j\) (\(1 \le j \le N - L + 1\)) thỏa mãn: \(S[1 \dots L]\) đảo ngược bằng với \(T[j \dots j+L-1]\).
Input
- Dòng đầu tiên chứa số nguyên \(N\) (\(1 \le N \le 10^5\)).
- Dòng thứ hai chứa xâu \(S\).
- Dòng thứ ba chứa xâu \(T\).
Output
- Một số nguyên duy nhất là giá trị \(L\) lớn nhất tìm được. Nếu không có giá trị \(L\) nào thỏa mãn, in ra
0.
Example
Test 1
Input
7
abacaba
baabcde
Output
2
Notes
- Thử với \(L = 3\):
- Tiền tố độ dài 3 của \(S\): \(S[1\dots3]\) là aba
- Đảo ngược của \(S[1\dots3]\) là aba
- Kiểm tra xem trong \(T\) (
baabcde) có xâu con nào dài \(3\) bằngabakhông: Không có (các xâu con độ dài 3 của \(T\) làbaa,aab, abc, bcd, cde). Do đó \(L = 3\) không thỏa mãn. - Thử với \(L = 2\):
- Tiền tố độ dài 2 của \(S\): \(S[1\dots2]\) là
ab. - Đảo ngược của \(S[1\dots2]\) là
ba. - Kiểm tra trong \(T\) (
baabcde): - Xâu con \(T[1\dots2]\) là \(3\)!
- Do tìm được ít nhất một vị trí khớp, \(L = 2\) là đáp án hợp lệ. Vì chúng ta đang tìm \(L\) lớn nhất và đã tìm thấy ở bước này, kết quả cuối cùng là \(2\).
Test 2
Input
5
abcde
edcba
Output
5
Kỳ thi:
- Series ℍ𝔾𝔹ℂ𝕡𝕡_'s - Tìm 𝓒𝓸𝓭𝓮𝓻 Tài năng nhất LQDOJ #02 (13 Tháng sáu, 2026)
Bình luận