牛客小白月赛24 D.牛妹吃豆子

题目链接

题目描述

牛妹为了打比赛经常不吃饭,但是牛妹非常喜欢吃豆子,她经常会吃很多很多的豆子,所以牛妹不会感觉到饿, 自然就不想吃饭了。
现在牛妹有一个 n∗m 个格子的棋盘.左下角的格子坐标为 (1, 1), 右上角的格子坐标为 (n,m).棋盘的每个格子都能放任意个豆子.
这时牛可乐带着一袋豆子走了过来, 打算跟牛妹分享这些豆子, 但是牛可乐并不想就这么简单的让牛妹吃到豆子, 所以牛可乐给牛妹出了一个难题.
现在牛可乐有 k 次操作,每次操作给出四个数字 x1,y1,x2,y2x_1,y_1,x_2,y_2x1​,y1​,x2​,y2​ : 表示牛可乐会将所有满足 x1≤x≤x2,y1≤y≤y2x_1\leq x\leq x_2,y_1\leq y \leq y_2x1​≤x≤x2​,y1​≤y≤y2​ 这两个条件的位置上放一个豆子。
牛可乐放完豆子后给出了 q 次询问, 每次询问给出四个数字 x1,y1,x2,y2x_1,y_1,x_2,y_2x1​,y1​,x2​,y2​ : 表示询问所有满足 x1≤x≤x2,y1≤y≤y2x_1\leq x\leq x_2,y_1\leq y \leq y_2x1​≤x≤x2​,y1​≤y≤y2​ 这两个条件的位置上中总共有多少个豆子.
这个问题可难住牛妹了, 牛妹想要吃到豆子就必须答对牛可乐的所有询问。

输入描述:

输入一行四个数字 n,m,k,q

n,m 表示棋盘的大小.有 k 次操作和 q 次询问

下面 k 行,每行四个数字 x1,y1,x2,y2x_1,y_1,x_2,y_2x1​,y1​,x2​,y2​

表示牛可乐会将所有满足 x1≤x≤x2,y1≤y≤y2x_1\leq x\leq x_2,y_1\leq y\leq y_2x1​≤x≤x2​,y1​≤y≤y2​ 这两个条件的位置上放一个豆子。

下面 q 行,每行四个数字 x1,y1,x2,y2x_1,y_1,x_2,y_2x1​,y1​,x2​,y2​

表示询问所有满足 x1≤x≤x2,y1≤y≤y2x_1\leq x\leq x_2,y_1\leq y\leq y_2x1​≤x≤x2​,y1​≤y≤y2​ 这两个条件的位置上中总共有多少个豆子。

输出描述:

每次询问,输出一行一个数字表示答案。

示例1

输入

2 2 1 1
1 1 2 2
1 1 2 1

输出

2

典型的二维前缀和问题,对修改操作,我们可以记录四个点的值来维护一块子阵,然后求一次二维前缀和得到矩阵,再求一次二维前缀和得到子阵和即可,AC代码如下,做这道题还发现了一个有趣的点,如果各位定义了 y1y_1y1​ 这个全局变量评测机是会报错的,因为 math.hmath.hmath.h 库里面有 y1y_1y1​ 这个函数,相当于你重定义了,所以会 CE,解决办法就改一个变量名或者放在 mainmainmain 函数里就好了:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=2e3+5;
ll f[N][N]={0};
int main()
{int n,m,k,q,x1,y1,x2,y2;scanf("%d%d%d%d",&n,&m,&k,&q);while(k--){scanf("%d%d%d%d",&x1,&y1,&x2,&y2);f[x1][y1]++;f[x2+1][y2+1]++;f[x2+1][y1]--;f[x1][y2+1]--;}for(int i=1;i<=n;i++){for(int j=1;j<=m;j++)f[i][j]+=f[i-1][j]+f[i][j-1]-f[i-1][j-1];}for(int i=1;i<=n;i++){for(int j=1;j<=m;j++)f[i][j]+=f[i-1][j]+f[i][j-1]-f[i-1][j-1];}while(q--){scanf("%d%d%d%d",&x1,&y1,&x2,&y2);printf("%lld\n",f[x1-1][y1-1]+f[x2][y2]-f[x1-1][y2]-f[x2][y1-1]);}return 0;
}

牛客小白月赛24 D.牛妹吃豆子相关推荐

  1. 牛客小白月赛24 D 牛妹吃豆子(二维差分+前缀和)

    题目链接 思路:板子题... #include<bits/stdc++.h> using namespace std; typedef long long ll; const int ma ...

  2. 牛客小白月赛24 J.建设道路

    牛客小白月赛24 J.建设道路 题目链接 题目描述 牛牛国有 nnn 个城市,编号为 1-n,第 iii 个城市有一个价值 aia_iai​ ,牛国的国王牛阔落特别喜欢在牛牛国旅游,并且他不想每次旅游 ...

  3. 牛客小白月赛24 C.十面埋伏

    牛客小白月赛24 C.十面埋伏 题目链接 题目描述 经过多年的征战,牛牛在与牛可乐的对决渐渐处于下风,于是牛牛决定对牛可乐来一次大围剿. 战场可以看作一张 n*m 的地图,牛可乐的士兵只能上下左右移动 ...

  4. 牛客小白月赛24 J—建设道路

    整理的算法模板:ACM算法模板总结(分类详细版) 链接:https://ac.nowcoder.com/acm/contest/5158/J 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空 ...

  5. 牛客小白月赛37 E.紫妹永不服输(构造)

    LINK 若存在 x x x个 R R R和 y y y个 P P P 那么形成的 R P RP RP和 P R PR PR总数为 x ∗ y = n + m x*y=n+m x∗y=n+m 所以直接 ...

  6. 【dfs序+树状数组】多次更新+求结点子树和操作,牛客小白月赛24 I题 求和

    前置知识点 dfs遍历 树状数组/线段树知识 链接 I题 求和. 题意 已知有 n 个节点,有 n−1 条边,形成一个树的结构. 给定一个根节点 k,每个节点都有一个权值,节点i的权值为 vi 给 m ...

  7. 牛客小白月赛22 D.收集纸片

    牛客小白月赛22 D.收集纸片 题目描述 我们把房间按照笛卡尔坐标系进行建模之后,每个点就有了一个坐标. 假设现在房子里有些纸片需要被收集,收集完纸片你还要回归到原来的位置,你需要制定一个策略来使得自 ...

  8. 牛客小白月赛1 I.あなたの蛙が帰っています

    牛客小白月赛1 I.あなたの蛙が帰っています 题目链接 题目描述 あなたの蛙が帰っています! 蛙蛙完成了一趟旅行,回家啦!但它还是没有去它心中非常想去的几个地方.总共有 N 个它 想去的目的地.蛙蛙下 ...

  9. 牛客小白月赛16 小石的签到题(博弈)

    牛客小白月赛16 小石的签到题 链接:https://ac.nowcoder.com/acm/contest/949/A来源:牛客网 题目描述 输入描述: 共一行,输入一个数 nnn . 输出描述: ...

  10. F.孤独(牛客小白月赛39)

    F.孤独(牛客小白月赛39) 题意: 给定一棵树,寻找一个路径,将断掉所有与这个路径上的点相连的边,使得剩下的最大连通块的大小最小 题解: 这题有点印象,感觉做过,至少这个方法肯定遇到过 设dp[u] ...

最新文章

  1. IO 模拟 1/2 Bias、1/4 Duty的 LCD 驱动
  2. android简单服务器的搭建
  3. 模型存储在哪里_最强的模型工作收纳站「Artty Station」登场!
  4. CentOS下如何配置LAMP环境
  5. c语言随机读写信息fetch,北京大学信息科学技术学院考试试卷-计算机系统导论-期中-2015(16页)-原创力文档...
  6. interllij IDEA2017快捷键风格修改为myEclipse快捷键风格
  7. 聊天宝解散,多闪、马桶MT还会远吗?
  8. WinCE下音频频谱显示效果图
  9. perl语言中的AWK之基础篇
  10. 一个软件,internal version 和external version, 安装有问题
  11. 17.卷1(套接字联网API)--- ioctl 操作
  12. Finaldata数据恢复软件官方版
  13. matlab 误差修正模型,求问大神用R做VEC(误差修正)模型的程序包或者代码是什么啊?...
  14. java代码混淆工具ProGuard混淆插件
  15. java代码混淆工具
  16. OLED SH1108 STM32 8080接口实际使用
  17. 云原生 | Docker:基础篇
  18. 编码器的使用和测速原理
  19. php排版工具下载,论文自动排版工具下载
  20. 抖音小程序可做类目--资讯

热门文章

  1. python——sys模块
  2. FreeBSD下解决Nagios不发报警邮件的问题
  3. 协程问题:Can only use Waiter.switch method from the Hub greenlet
  4. C#控制方块的移动windows
  5. Python数据存取详解
  6. autojs图片加水印
  7. Retrofit源码分析
  8. SVN Commit failed(details follow)
  9. ios-AddressBook框架
  10. 【其实是空空荡荡的牵挂,没有结局的怀念】