当前位置: 首页 > news >正文

【算法】797. 差分

题目

797. 差分

思路

差分的实质是通过构造数组b减少时间复杂度,数组a为初始数据,构造数组b,数组a是b的前缀和,通过对数组b操作就可以实现数组a每个数加上c,而对数组b的操作在单位时间内即可完成,对数组b操作完后,再用b表示a。

代码

#include<iostream>
using namespace std;
const int N=100010;
int main()
{
    int n,m;
    cin>>n>>m;
    int a[N],b[N];
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
    }
    for(int i=1;i<=n;i++)
    {
        b[i]=a[i]-a[i-1];
    }
    while(m--)
    {
        int l,r,c;
        cin>>l>>r>>c;
        b[l]=b[l]+c;
        b[r+1]=b[r+1]-c;
    }
    for(int i=1;i<=n;i++)
    {
        a[i]=a[i-1]+b[i];
        cout<<a[i]<<" ";
    }
    return 0;
}

相关文章:

  • C语言番外篇(4)--------->goto语句
  • 如何进行OceanBase 运维工具的部署和表性能优化
  • Linux 内核配置机制详细讲解
  • 【Jenkins】一种灵活定义多个执行label节点的jenkinsfile写法
  • 【由技及道】模块化战争与和平-论项目结构的哲学思辨【人工智智障AI2077的开发日志】
  • 【c++】【线程池】固定式线程池(FixedThreadPool)
  • 解锁C# XML编程:从新手到实战高手的蜕变之路
  • Document对象
  • 【组态PLC】基于西门子S7-200和博图V16和组态王十层起重机电梯设计【含PLC组态源码 M018期】
  • 什么是 Java 中的线程安全?
  • 使用前端 html css 和js 开发一个AI智能平台官网模板-前端静态页面项目
  • 运维脚本——10.服务健康检查与自愈
  • ffmpeg avformat_open_input的作用
  • 赚钱的事与值钱的事
  • 绕过information_schema库的一些方式
  • 总结一下Java中的线程池的面试问题
  • ms-swift 3.x和2.x中参数不一致的暗坑
  • string类详解(下)
  • Spark内存并行计算框架
  • 设计模式教程:模板方法模式(Template Method Pattern)
  • 武汉网站建设报价/企业seo外包公司
  • 淘宝网作图做网站/网站网络推广运营
  • 企业网站怎做/百度电话号码查询
  • 网站建设开场白/关键词完整版
  • 专门做电路图的网站/seo关键词优化外包公司
  • 不会技术怎么做公司网站/店面怎么做位置定位