蓝桥杯省赛无忧 第二章 基础算法 课件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;
}


相关推荐
2401_8588698017 分钟前
支持向量机
算法·机器学习·支持向量机
用户48221371677533 分钟前
深度学习——卷积神经网络
算法
DashingGuy36 分钟前
算法(keep learning)
java·数据结构·算法
田里的水稻38 分钟前
C++_数据类型和数据结构
java·数据结构·c++
兔兔西38 分钟前
【数据结构、java学习】数组(Array)
java·数据结构·算法
007php00739 分钟前
Go语言面试:传值与传引用的区别及选择指南
java·开发语言·后端·算法·面试·golang·xcode
小徐不徐说39 分钟前
数据结构基础之队列:数组/链表
c语言·数据结构·算法·链表·面试
fantasy_arch1 小时前
SVT-AV1 svt_aom_motion_estimation_kernel 函数分析
人工智能·算法·av1
notfindjob2 小时前
Opencv C++ 教程-人脸识别
c++·opencv·计算机视觉
极客智造2 小时前
OpenCV C++ 核心:Mat 与像素操作全解析
c++·人工智能·opencv