[Buổi 6][Prefix sum & hiệu][RDD] Bài 2: Chuỗi con lớn nhất
Chuỗi con lớn nhất
Trong một buổi phỏng vấn tuyển dụng tại FullHouse Dev, một ứng viên được đưa ra một bài toán thú vị về xử lý chuỗi. Đây là cơ hội để ứng viên thể hiện kỹ năng lập trình và tư duy logic của mình.
Bài toán
Ứng viên được cung cấp một chuỗi \(S\) có độ dài \(N\). Mỗi ký tự trong chuỗi là '0' hoặc '1'. Nhiệm vụ của ứng viên là tìm chuỗi con lớn nhất trong đó số lượng ký tự '1' nhiều hơn số lượng ký tự '0'. Ứng viên cần in ra độ dài lớn nhất có thể của chuỗi con thỏa mãn điều kiện này.
INPUT FORMAT:
- Dòng đầu tiên chứa một số nguyên \(N\) - độ dài của chuỗi.
- Dòng thứ hai chứa một chuỗi \(S\) gồm các ký tự '0' và '1'. Độ dài của chuỗi này chính xác là \(N\).
OUTPUT FORMAT:
- In ra một số nguyên duy nhất - độ dài của chuỗi con lớn nhất thỏa mãn yêu cầu.
Ràng buộc:
- \(1 \leq N \leq 10^5\)
Ví dụ
INPUT
6
011100
OUTPUT
3
Giải thích
Ba ký tự cuối cùng, tức là "100", tạo thành một chuỗi con có độ dài 3, trong đó số lượng '1' (một ký tự) nhiều hơn số lượng '0' (hai ký tự). Đây là chuỗi con lớn nhất có thể thỏa mãn điều kiện này.
Với bài toán này, ứng viên không chỉ cần thể hiện kỹ năng lập trình mà còn phải có khả năng phân tích và tối ưu hóa thuật toán để đáp ứng các ràng buộc về thời gian và bộ nhớ. FullHouse Dev luôn tìm kiếm những tài năng có thể giải quyết các vấn đề phức tạp một cách hiệu quả.
Comments