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

网站建设和web前端一样吗百度一下你就知道搜索引擎

网站建设和web前端一样吗,百度一下你就知道搜索引擎,app资源网站开发,企业电商网站商城建设一维差分 在说明什么是差分之前先看一道例题 输入一个长度为 n 的整数序列。 接下来输入 m 个操作,每个操作包含三个整数 l,r,c表示将序列中 [l,r] 之间的每个数加上 c。 请你输出进行完所有操作后的序列。 输入格式 第一行包含两个整数 n 和 m。 第二行包含…

一维差分

在说明什么是差分之前先看一道例题

输入一个长度为 n 的整数序列。

接下来输入 m 个操作,每个操作包含三个整数 l,r,c表示将序列中 [l,r] 之间的每个数加上 c。

请你输出进行完所有操作后的序列。

输入格式

第一行包含两个整数 n 和 m。

第二行包含 n 个整数,表示整数序列。

接下来 m 行,每行包含三个整数 l,r,c表示一个操作。

输出格式

共一行,包含 n 个整数,表示最终序列。

数据范围

1≤n,m≤100000,
1≤l≤r≤n,
−1000≤c≤1000,
−1000≤整数序列中元素的值≤1000

输入样例:
6 3
1 2 2 1 2 1
1 3 1
3 5 1
1 6 1
输出样例:
3 4 5 3 4 2

如果按照朴素算法,每次都更新[l,r]区间上的所有数,那么时间复杂度会是O(n)

那么能否有一个算法使得不必更新区间上的所有数,就能实现区间上所有数最后是期望结果呢

我们想一下一维前缀和的思路, a i a_i ai = b 1 b_1 b1 + b 2 b_2 b2 + b 3 b_3 b3 + …… + b i b_i bi

如果a[]数组是b[]数组的前缀和数组

那么要让[l, r]上所有数加上元素c,可以让b[l] + c,这样从a[l]到最后所有元素都会加上元素c,但是我们不希望a[r]以后的元素也加上元素c,所以我们可以让b[r + 1] - c

这样核心问题就是要怎么构造这个b[]数组呢

假设a[]数组是由0,0,0……0通过b[]数组构造而来的,那么是不是可以认为是进行了n次(i, i, a[i])操作

也就是说整个一维差分就一个操作,即b[l] + c和b[r + 1] - c

在这里插入图片描述

import java.util.Scanner;
class Main{static int N = 100010;static int[] arr = new int[N];static int[] brr = new int[N];public static void main(String[] args){Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int m = scanner.nextInt();//读取原数组for(int i = 1; i <= n; i++){arr[i] = scanner.nextInt();}//假设原数组是从0 0 0 …… 0进行了n次[i,i,a[i]]次操作构建的for(int i = 1; i <= n; i++){insert(i, i, arr[i]);}while(m-- > 0){int l = scanner.nextInt();int r = scanner.nextInt();int c = scanner.nextInt();insert(l, r, c);}//求差分数组的前缀和for(int i = 1; i <= n; i++){brr[i] += brr[i - 1];}for(int i = 1; i <= n; i++){System.out.print(brr[i] + " ");}}//更新差分数组public static void insert(int l, int r, int c){brr[l] += c;brr[r + 1] -= c;}
}
http://www.cadmedia.cn/news/12158.html

相关文章:

  • 网站制作需要多少费用排名优化公司哪家好
  • 新疆建设厅官网深圳seo排名哪家好
  • 软件公众号开发seo关键词排名优化如何
  • 建设网站招标文件新能源汽车公司
  • 机票便宜网站建设石家庄新闻网
  • 天津建设部网站首页网络营销典型案例
  • 衣柜推拉门图案设计网站seo商学院
  • 苍山网站建设网络营销与策划试题及答案
  • 建一个网站的技术解决方案google搜索排名优化
  • 邢台县教育局五库建设网站枸橼酸西地那非片
  • 网站平台建设投资费用清单我想接app纯注册推广单
  • 专门做租房的网站又一病毒来了比新冠可怕
  • 萝岗营销型网站建设上海好的seo公司
  • 镇江网站建设公司产品推广渠道有哪些方式
  • 做五金上哪个网站推广想开广告公司怎么起步
  • 深圳网站建设 湖南岚鸿安卓优化大师app
  • 客户关系管理案例经典seo的含义是什么意思
  • 网站的音乐怎么做的天津seo推广
  • 电子商务网站建设实训需求分析南京seo优化
  • 与网站建设有关的招标文件宁波网站推广哪家公司好
  • 网站建设定制开发价格如何在百度上投放广告
  • 政府门户网站信息建设自查百度新闻发布平台
  • 成品网站w灬源码1688永久网站百度seo找哪里
  • 怎么给网站建设提建议网络营销策略方案
  • 政府网站建设加强组织流量购买网站
  • 跨境网站有哪些网站开发一般多少钱
  • 中山做网站联系电话正规软件开发培训学校
  • 网站的下拉列表怎么做的软服业营收破334亿
  • 设计网站需要多少钱百度ai营销中国行
  • 哈尔滨住房建设发展集团网站百度怎么发免费广告