zoukankan      html  css  js  c++  java
  • AcWing 797. 差分

    题目传送门

    #include <bits/stdc++.h>
    
    using namespace std;
    const int N = 100010;
    int n, m;
    int a[N], b[N];
    
    /**
     * 功能:差分计算
     * @param l 左边界
     * @param r 右边界
     * @param c 值
     */
    void insert(int l, int r, int c) {
        b[l] += c;
        b[r + 1] -= c;
    }
    int main() {
        cin >> n >> m;
        for (int i = 1; i <= n; i++) cin >> a[i], insert(i, i, a[i]);
        while (m--) {
            int l, r, c;
            cin >> l >> r >> c;
            insert(l, r, c);
        }
        for (int i = 1; i <= n; i++)
            a[i] = a[i - 1] + b[i], printf("%d ", a[i]);
        return 0;
    }
    
  • 相关阅读:
    例图作业
    冲刺第二天
    Day9
    Day8
    Day7
    Day6
    Day5
    Day4
    Day2
    第四次作业——个人作业——软件案例分析
  • 原文地址:https://www.cnblogs.com/littlehb/p/15761160.html
Copyright © 2011-2022 走看看