算法笔记-其他高效的技巧与算法
- 前缀和
前缀和
#include <cstdio>
#include <vector>
using namespace std;
const int MAXN = 10000;
int n, a[MAXN];
int sum[MAXN] = { 0 };int main() {scanf("%d", &n);for (int i = 0; i < n; i++) {scanf("%d", &a[i]);if (i == 0) {sum[i] = a[i];}else {sum[i] = sum[i - 1] + a[i];}}//上面就是典型的前缀和模板,将数组中的前缀之和计算到数组sum[]之中//下面就是依次的根据多少进行输出了int k, m;scanf("%d", &k);for (int i = 0; i < k; i++) {scanf("%d", &m);printf("%d\n", sum[m - 1]);}return 0;
}