Nguồn: Free Contest
Với học sinh thứ , đầu tiên ta đi tìm số học sinh có cùng chiều cao
và đứng ở vị trí bên trái
. Việc tìm số học sinh ở bên phải có thể xử lí tương tự.
Đặt là học sinh gần nhất ở bên trái học sinh
có chiều cao lớn hơn hoặc bằng
. Ta có thể dễ dàng tính được mảng
sử dụng stack.
Đặt là số học sinh bên trái học sinh
, có chiều cao bằng
và học sinh
có thể nhìn thấy được. Công thức quy hoạch động là:
nếu
.
nếu
.
Độ phức tạp: .
Bình luận