Thứ Bảy, 12 tháng 3, 2016

DÃY SỐ NGUYÊN LIÊN TIẾP


Cho dãy số nguyên A =(a1, a2,…,an) bạn được thay số 0 trong A bởi một số nguyên bất kỳ khác sau đó chọn ra trong dãy A một số nhiều nhất các số (không cần đúng thứ tự) sao cho các số đã chọn tạo thành một dãy số nguyên liên tiếp.
Yêu cầu: Tìm cách có được dãy số nguyên liên tiếp dài nhất theo cách trên.
Ví dụ với A=(1,0,3,8,5,9,0), ta có thể thay hai số 0 lần lượt bởi 6 và 7, khi đó có thể chọn trong A ra các số (5, 6, 7, 8, 9) để được dãy số nguyên liên tiếp dài nhất.
Dữ liệu: Vào từ file văn bản LSEQ.INP
+ Dòng 1 chứa số nguyên dương n≤106
+ Dòng 2 chứa n số nguyên a1, a2,…,an cách nhau bởi dấu cách ("i: |ai|≤106)
Kết quả: ghi ra file văn bản LSEQ.OUT một số nguyên duy nhất là độ dài dãy số nguyên liên tiếp thu được theo phương án của bạn.
Ví dụ:
LSEQ.INP
LSEQ.OUT
7
1 0 3 8 5 9 0
5

Không có nhận xét nào: