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

商务网站建设报告书北京全网营销推广

商务网站建设报告书,北京全网营销推广,贵州新闻,网站建设全包广州前缀和前缀和子矩阵的和结语前缀和 输入一个长度为 n的整数序列。 接下来再输入 m 个询问,每个询问输入一对 l,r 对于每个询问,输出原序列中从第 l 个数到第 r个数的和。 输入格式第一行包含两个整数 n和 m 第二行包含 n个整数,表示整数…

前缀和

  • 前缀和
  • 子矩阵的和
  • 结语

前缀和

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

接下来再输入 m 个询问,每个询问输入一对 l,r

对于每个询问,输出原序列中从第 l 个数到第 r个数的和。

输入格式第一行包含两个整数 n和 m

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

接下来 m行,每行包含两个整数 l 和 r,表示一个询问的区间范围。

输出格式共 m 行,每行输出一个询问的结果。

数据范围

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

输入样例:

5 3
2 1 3 6 4
1 2
1 3
2 4

输出样例:

3
6
10

前缀和的用处:前缀和数组能以On(1)的方式求出给定范围内数组的和。

在很多地方都用的上前缀和数组,只是它很容易被人忽略,所以得多练练加深印象。

解题思路:本题是一维数组的前缀和,思路很简单,直接在原数组上进行修改即可。

求前缀和数组:设原数组为a[],我们可知递推方程为a[i]=a[i-1]+a[i]

前缀和数组求出后,要知道给定范围内[i,j]的数组和,就很简单了
方程为 vla=a[j]-a[i-1]

代码:

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

子矩阵的和

输入一个 n 行 m 列的整数矩阵,再输入 q 个询问,每个询问包含四个整数 x1,y1,x2,y2,表示一个子矩阵的左上角坐标和右下角坐标。
对于每个询问输出子矩阵中所有数的和。
输入格式
第一行包含三个整数 n,m,q

接下来 n 行,每行包含 m 个整数,表示整数矩阵。

接下来 q行,每行包含四个整数 x1,y1,x2,y2,表示一组询问。

输出格式
共 q行,每行输出一个询问的结果。

数据范围:

1≤n,m≤1000
,
1≤q≤200000
,
1≤x1≤x2≤n
,
1≤y1≤y2≤m
,1000≤矩阵内元素的值≤1000

输入样例:

3 4 3
1 7 2 4
3 6 2 8
2 1 2 3
1 1 2 2
2 1 3 4
1 3 3 4

输出样例:

17
27
21

本题大致意思同上题差不多,只是从一维数组变为二维数组,有些不太好理解;

要求给定范围内的数组和 ,先说求二维前缀和的递推公式

a[i][j]=a[i][j-1]+a[i-1][j]-a[i-1][j-1]+a[i][j];

在这里插入图片描述

看图:
黑颜色即为所求,但是当我们在减去多余部分的时候,有一块区域会被减去两次,如上图,就是橙色的区域,因此我们需要将其加回来。
代码:

#include<iostream>using namespace std;const int N=1010;
int a[N][N];int main()
{int n,m,q;scanf("%d%d%d",&n,&m,&q);for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){scanf("%d",&a[i][j]);}}for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){a[i][j]=a[i][j-1]+a[i-1][j]-a[i-1][j-1]+a[i][j];}}while(q--){int x1,y1,x2,y2;scanf("%d%d%d%d",&x1,&y1,&x2,&y2);int val=a[x2][y2]-a[x2][y1-1]-a[x1-1][y2]+a[x1-1][y1-1];cout<<val<<endl;}return 0;
}

结语

下篇会描述前缀和的兄弟,差分数组。

如果觉得有帮助的话,记得
一键三连哦ヾ(≧▽≦*)o。

http://www.tj-hxxt.cn/news/55144.html

相关文章:

  • 网络服务提供者是不是网络运营者关于seo如何优化
  • 松江泖港网站建设西安网站seo费用
  • 梧州网站建设定制重庆seo论
  • 做电影网站能赚钱吗seo是付费还是免费推广
  • 建设网站需要想好的问题seo舆情优化
  • 有口碑的南通网站建设深圳媒体网络推广有哪些
  • 普通网站 用多说网站建站网站
  • 用jsp做的二手交易网站有没有帮忙推广的平台
  • 日本做a的动画视频在线观看网站百度我的订单
  • 网站建设创意报告书网络营销百科
  • 做网站实训目的和意义百度推广登录平台网址
  • 现在个人都在哪个网站做外贸百度广告太多
  • 在那个网站找模具做上海公司网站seo
  • 外贸网站啥需要掌握在自己手里seo公司费用
  • 上海网站建设包括哪些网络营销有本科吗
  • 客栈网站建设代码怎么关闭seo综合查询
  • 安徽外贸网站google建站百度地图人工客服电话
  • 网站背景怎么设置免费新闻源发布平台
  • 郑州七彩网站建设公司怎么样线上推广是什么工作
  • 网站 目录 结构徐州网站建设方案优化
  • 做百家好还是个人网站网页制作的软件
  • 网站建设和网站开发南京seo关键词排名
  • 网站建设报价模板网络营销组织的概念
  • 网站建设活动计划常用的五种网络营销工具
  • 宿迁公司企业网站建设百度推广渠道代理
  • 企业信用信息网公示网官网查询丽水百度seo
  • 有什么做调查的网站百度广告
  • Wordpress网站仿站软文广告案例500字
  • python网站开发pdf西安百度推广代运营
  • bellissima wordpress抖音seo关键词优化排名