accumulate(arr.begin(), arr.end(), int val);
accumulate函数包含在 #include<numeric> 头文件下,其中有三个参数,前两个参数是累加元素的范围,第三个参数是累加的初值。
比如:
定义一个vector数组,初始化五个数据:1,2,3,4,5。
int sum;
sum = accumulate(arr.begin(), arr.end(), 0);
cout << sum << endl;
求数组每个元素累加和,结果为:
0 + 1 + 2 + 3 + 4 + 5 = 15。
sum = accumulate(arr.begin(), arr.end(), -1-5);
cout << sum << endl;
去掉第一个和最后一个元素,求和,结果为:
-1 - 5 + 1 + 2 + 3 + 4 + 5 = 9。
应用:
去掉一个最高分和一个最低分,求成绩的平均值等