Bỏ qua đến nội dung

Hướng giải: Tổng đoạn con

Tổng đoạn con

Mã bài: binarysearch08 Nhóm: Uncategorized Điểm: 2.000 điểm
Giới hạn
1,0 s, 256 MB
Tỉ lệ AC
25,4%
Người giải
11
Chỉ đọc hướng giải khi bế tắc và đừng sao chép mã trong đó. Hãy tôn trọng người ra đề và người viết hướng giải: nộp lời giải chính thức khi chưa tự giải được bài có thể khiến bạn bị khóa tài khoản.

Với mỗi vị trí j (1 \le j \le n), ta đếm số đoạn con [i,j] (1 \le i \le j) thỏa mãn bài toán. Tiến hành tìm chỉ số k nhỏ nhất thỏa mãn a_k+a_{k+1}+...+a_j \le S thông qua Tìm kiếm nhị phân (Binary Search) kết hợp Tổng tiền tố (Prefix Sum). Khi đó các chỉ số i thỏa mãn tổng các phần tử đoạn [i,j] không vượt quá S sẽ nằm trong đoạn [k,j].

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

Bình luận