partial_sum関数

http://www.geocities.jp/ky_webid/cpp/library/023.html

部分和を求めるための関数です。

順番にある値と次の値の加算結果を格納していきます。

実装を見たほうがはやいですね。

#include <iostream>
#include <numeric>
#include <vector>
using namespace std;

int main () {
    vector<int> data1;
    vector<int> data2;
    
    data1.push_back(10);
    data1.push_back(50);
    data1.push_back(1000);
    
    partial_sum(data1.begin(),data1.end(),back_inserter(data2));
    
    copy(data2.begin(),data2.end(),ostream_iterator<int>(cout,"\n"));
    
    return 0;
}
$ main
10
60
1060

初めは10。次は10と50を足した60。で最後は60と1000を足した1060になるといった具合です。