蓝桥杯省赛无忧 第二章 基础算法 课件27 差分

01 差分的原理和特点


02 差分的实现

03 例题讲解

csharp 复制代码
#include <bits/stdc++.h>
using namespace std;
const int N  = 1e5 +7;
int arr[N],diff[N];
void solve(int n,int m){
  for(int i=1;i<=n;i++) cin >> arr[i];
  for(int i=1;i<=n;i++) diff[i] = arr[i] - arr[i-1];
  while(m--){
    int x,y,z;cin >> x >> y >> z;
    diff[x] += z,diff[y+1] -= z;
  }
  for(int i=1;i<=n;i++) arr[i] = arr[i-1] + diff[i];
  for(int i=1;i<=n;i++) cout << arr[i] << ' ';
  cout << endl;
}
int main()
{
 int n,m;
 while(cin >> n >> m) solve(n,m);
  return 0;
}


相关推荐
txzrxz44 分钟前
数论:排列数、组合数、费马小定理、逆元、同余定理
c++·算法·数论·组合数·费马小定理·逆元·排列数
xqqxqxxq1 小时前
LeetCode Hot100 双指针专项题解笔记
笔记·算法·leetcode
闪电悠米1 小时前
力扣hot100-54.螺旋矩阵-模拟边界控制详解
算法·leetcode·矩阵
变量未定义~1 小时前
虚拟节点-星石传送阵(4星)、强连通分量
数据结构·算法
IT方大同2 小时前
C语言分支与循环语句
c语言·开发语言·算法
库克克2 小时前
【C++】STL 库
c++
待磨的钝刨2 小时前
深入理解主成分分析(PCA)
人工智能·线性代数·算法·机器学习
星恒随风2 小时前
C++ 继承进阶:默认成员函数、多继承、虚继承与组合设计
开发语言·c++·笔记·学习
呜喵王阿尔萨斯3 小时前
C/C++ const -- 多义混乱
c语言·开发语言·c++
海清河晏1113 小时前
Qt实战:从零构建美化登录界面
开发语言·c++·qt