解説
Bi≤lj<rj≤Ei を満たすような j (1≤j≤M) の個数を求めるには、始発のバス停から数えて l 番目のバス停で乗車し、 r 番目のバス停で降車するような客の人数を a(l,r) として、a(p,q) (Bi≤p<q≤Ei) の和を求めれば良いです。
しかしこの和を愚直に求めようとすると、最悪の場合ほぼ全ての a(p,q) を求める必要があるため、1クエリ当たり O(N2) となり、クエリ処理に O(N2Q) かかってしまい実行時間制限に間に合いません。そこで、a(p,q) (Bi≤p<q≤Ei) の和を二次元累積和を用いて高速に求められるようにすると、各クエリを定数時間で処理できるため、クエリ処理にかかる計算量を O(Q) に減らすことが出来ます。二次元累積和の前処理には O(N2) かかるため、全体の時間計算量は O(N2+M+Q) となり、これは実行時間制限に間に合います。