Notice
Chào mừng bạn đến với OREOJ !

Hướng dẫn giải của [TS10 Hà Nội Chuyên Sư Phạm 2025 - 2026] Chạy tiếp sức


Chỉ dùng lời giải này khi không có ý tưởng, và đừng copy-paste code từ lời giải này. Hãy tôn trọng người ra đề và người viết lời giải.
Nộp một lời giải chính thức trước khi tự giải là một hành động có thể bị ban.

Gọi ~pref_i~ là tổng độ dài ~i~ chặng đầu. Nếu ~A~ chạy tới vị trí ~i~ thì ~S_A=pref_i~. Ta cần tìm vị trí kết thúc của ~B~ sao cho ~S_B \ge S_A~ và ~S_C \ge S_B~.

Vì các độ dài đều dương, mảng cộng dồn tăng nghiêm ngặt. Với mỗi ~i~, dùng tìm kiếm nhị phân để lấy vị trí nhỏ nhất ~j~ có ~pref_j-pref_i \ge S_A~. Nếu tại vị trí này vẫn có ~S_B \le S_C~ thì phương án khả thi.

Độ phức tạp ~O(n\log n)~.


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.