题目
前缀和
题解
前缀和模板
太简单了就多加了点东西:对比cin cout和scanf printf的耗时对比
代码
#include <iostream>
using namespace std;
const int N = 100010;
int n, m;
int a[N], s[N];
int main(){scanf("%d%d", &n, &m);//原数组 for (int i = 1; i <= n; i ++ ) scanf("%d", &a[i]); //前缀和数组初始化for (int i = 1; i <= n; i ++ ) s[i] = s[i - 1] + a[i]; //这是第一种输入输出方式while(m --){int l, r;cin >> l >> r;cout << s[r] - s[l - 1] << endl;}//这是第二种输入输出方式while (m -- ){int l, r;scanf("%d%d", &l, &r);printf("%d\n", s[r] - s[l - 1]); // 区间和的计算}return 0;
}
结论
可以看到时间差了很远很远!!!,所以追求速度的话输入一定要用scanf