集会
时间限制:5.0s 内存限制:256.0MB
问题描述
Q国有一条南北向的高速公路,这条公路沿线有n个城市,由北向南编号1至n。该国不定期举行集会活动,集会一定是编号连续的一些城市共同组织,届时,这些城市的公民会全部聚集到最北边的城市。
然而,高速公路并非是免费的,而是按人数和公里数收费的,单价为每人每公里1元。作为高速公路的管理者,你希望统计每次集会中高速公路的收入,请你写个简单的程序解决这个问题吧。
输入格式
第一行包含一个正整数n,表示城市数量
第二行包含n个整数Ci,表示i号城市的人数
第三行包含n个整数Pi,表示i号城市到1号城市的距离(第一个数一定为0)
第四行包含一个正整数q,表示集会活动的次数
随后q行,每行两个正整数x、y,表示此次集会活动是由x号至y号城市共同组织的
输出格式
共q行,每行包含一个整数,表示这次集会活动高速公路的收入
样例输入
3
1 2 3
0 1 3
3
1 2
2 3
1 3
样例输出
4
12
22
数据规模和约定
40%的数据满足:n, q<=2,000; Pi<=1,000,000; Ci<=10,000
80%的数据满足:n, q<=200,000; Pi<=1,000,000; Ci<=10,000
100%的数据满足:n, q<=200,000;Pi<=1,000,000,000; Ci<=10,000
用c++