• C++走向远洋——66(十五周阅读程序)


    */
     * Copyright (c) 2016,烟台大学计算机与控制工程学院
     * All rights reserved.
     * 文件名:text.cpp
     * 作者:常轩
     * 微信公众号:Worldhello
     * 完成日期:2016年6月8日
     * 版本号:V1.0
     * 问题描述:
     * 程序输入:无
     * 程序输出:见运行结果
     */
    #include <string>
    #include <set>
    #include <iterator>
    #include <iostream>
    using namespace std;
    int main()
    {
        set <string> strset;
        strset.insert("cantaloupes");
        strset.insert("grapes");
        strset.insert("apple");
        strset.insert("orange");
        strset.insert("banana");
        strset.insert("grapes");
        copy(strset.begin(), strset.end(), ostream_iterator<string>(cout, " "));
        cout << endl;
        return 0;
    }


    #include <functional>
    #include <numeric>
    #include <vector>
    #include <iostream>
    using namespace std;
    int main()
    {
        vector<int> v(5);
        for (int i = 0; i < 5; i++)
            v[i] = i + 1;
        int sum = accumulate(v.begin(), v.end(), 0);
        cout << "Sum of values == " << sum << endl;
        int product = accumulate(v.begin(), v.end(), 1, multiplies<long>());
        cout << "Product of values == " << product << endl;
        return 0;
    }


    #include <algorithm>
    #include <functional>
    #include <vector>
    #include <iostream>
    #include <numeric>
    #include <iterator>
    using namespace std;
    int main()
    {
        int a[] = {1,4,7,2,5,8};
        int b[] = {1,2,3,3,2,1};
        const int ASZ = sizeof a / sizeof a[0];
        const int BSZ = sizeof b / sizeof b[0];
        ostream_iterator<int> out(cout,"  ");
        copy(a, a + ASZ, out);
        cout<<endl;
        copy(b, b + BSZ, out);
        cout<<endl;
        int r = accumulate(a, a + ASZ, 0);
        cout << "accumulate 1: " << r << endl;
        // Should produce the same result:
        r = accumulate(b, b + BSZ, 0, plus<int>());
        cout << "accumulate 2: " << r << endl;
        r = inner_product(a, a + ASZ, b, 0);
        // 或  r = inner_product(a, a + ASZ, b, 0, plus<int>(), multiplies<int>());
        cout << "inner_product : " << r << endl;
        int* it = partial_sum(a, a + ASZ, b);
        // 或 int* it = partial_sum(a, a + ASZ, b, plus<int>());
        copy(b, it, out);
        cout<<endl;
        it = adjacent_difference(a, a + ASZ, b);
        // 或 it = adjacent_difference(a, a + ASZ, b, minus<int>());
        copy(b, it, out);
        cout<<endl;
        return 0;
    }



  • 相关阅读:
    导航栏的修改
    [题解](背包)luogu_P4095 eden的新背包问题
    [題解](貪心/堆)luogu_P2107小Z的AK計劃
    [題解](最短路)luogu_P2384最短路
    [題解](單調隊列dp)luogu_P1725琪露諾
    [題解](單調隊列/水)luogu_P3088擠奶牛
    [題解](單調隊列dp)【2016noip福建夏令營】探險
    [題解](水/最短路)出题人大战工作人员
    [题解](最短路)最短路点数
    [題解]luogu_P1613跑路(最短路/倍增)
  • 原文地址:https://www.cnblogs.com/chxuan/p/8232180.html
Copyright © 2020-2023  润新知