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

石林彝族网站建设营销型网站建设哪里济南兴田德润优惠吗

石林彝族网站建设,营销型网站建设哪里济南兴田德润优惠吗,免费网站空间虚拟主机,最近三天的科技新闻题目来源: 找不到页面 - AcWing 题目内容: 输入一个 n 行 m 列的整数矩阵,再输入 q 个操作,每个操作包含五个整数 x1,y1,x2,y2,c,其中 (x1,y1) 和 (x2,y2)表示一个子矩阵的左上角坐标和右下角坐标。 每个操作都要将…

题目来源:

找不到页面 - AcWing


题目内容:

输入一个 n 行 m 列的整数矩阵,再输入 q 个操作,每个操作包含五个整数 x1,y1,x2,y2,c,其中 (x1,y1) 和 (x2,y2)表示一个子矩阵的左上角坐标和右下角坐标。

每个操作都要将选中的子矩阵中的每个元素的值加上 c。

请你将进行完所有操作后的矩阵输出。

输入格式

第一行包含整数 n,m,q。

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

接下来 q行,每行包含 5 个整数 x1,y1,x2,y2,c,表示一个操作。

输出格式

共 n行,每行 m个整数,表示所有操作进行完毕后的最终矩阵。

数据范围

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

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

思路分析:

基于二维数组的差分

图解:


代码实现:

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

题目心得:

  1. 二维差分结论:
    给以(x1,y1)为左上角,(x2,y2)为右下角的子矩阵中的所有元素加上c:
    void insert(int x1,int y1,int x2,int y2,int c)
    {     //对b数组执行插入操作,等价于对a数组中的(x1,y1)到(x2,y2)之间的元素都加上了cb[x1][y1]+=c;b[x2+1][y1]-=c;b[x1][y2+1]-=c;b[x2+1][y2+1]+=c;
    }

http://www.yayakq.cn/news/661062/

相关文章:

  • 备案关闭网站plone vs wordpress
  • 上海 网站设计wordpress 阿里oss
  • 建设部网站申请表无法打印怎么找做网站的外包公司
  • 电商网站建设需求营销类型的公司网站
  • 做外贸铝材哪个网站比较好php ajax网站开发
  • 网站手机端生成瓷砖网络推广培训
  • 贵阳58同城做网站公司有哪些高校支付网站建设费需要入无形资产
  • 上海网站建设价wordpress封装小程序
  • 怎样进入网站的后台企业建网站的 程序
  • 免费个人简历制作网站什么软件做美食视频网站好
  • 湖南湘信建设工程有限公司网站wordpress前台弹窗
  • 服务器上如何做网站哪个网站推荐做挖机事的
  • 推荐6个国外自媒体平台南昌seo网站设计
  • 山东省建设部继续教育网站qq的seo综合查询
  • 软件开发怎么样深圳网站建设zhaoseo
  • 智能网站建设商家wordpress小工具有哪些
  • 濮阳建设企业网站公司怎么用pf做网站
  • 高明做网站cms影视源码采集
  • wordpress500错误网站优化新闻
  • 做视频教学网站wordpress编辑模板
  • 网站排行榜泸州市建设厅官方网站
  • 陵水网站建设公司怎么看网站是不是php语言做的
  • 青岛正规品牌网站制作策划湖南城市建设网站
  • 怎么用indesign做网站设计网络推广平台代理
  • 网站设计网站开发优化桌面软件开发工具
  • 中国建设银行泗水支行的网站怎么做用户调研网站
  • 如何建立自己的网站去推广南通市城乡和住房建设局网站
  • 装潢公司网站源码php浙江制做网站的公司
  • 杭州网站建设索q.479185700住房和城乡建设部网站资质查询
  • 江苏扬州工程建设信息网站网站后台免费模板