[题] 前缀和 (含输入输出的耗时对比)

题目

前缀和


题解

前缀和模板
太简单了就多加了点东西:对比cin cout和scanf printf的耗时对比


代码

#include 
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

你可能感兴趣的:(图论,c++)