[NowCoder] 牛牛数星星
一闪一闪亮晶晶,满天都是小星星,牛牛晚上闲来无聊,便躺在床上数星星。
现在,牛牛想问你m个问题,给你两个点的坐标(a1, b1)(a2,b2),表示一个矩形的左上角的点坐标和右下角的点坐标,请问在这个矩形内有多少颗星星(边界上的点也算是矩形内)。
输入描述:
第一行输入一个数字n(1≤n≤100000),表示星星的颗数。接下来的n行,每行输入两个数x和y(1≤xy≤1000),表示星星的位置。
然后输入一个数字m(1≤m≤100000), 表示牛牛询问问题的个数。接下来m行,每行输入四个数字a1,b1,a2,b2(1≤a1<a2≤1000), (1≤b1<b2≤1000)题目保证两颗星星不会存在于同一个位置。
输出描述:
输出一共包含m行,每行表示与之对应的每个问题的答案。
输入
4 1 1 2 2 3 3 1 3 4 1 1 2 2 1 1 3 3 2 2 3 3 1 2 2 3
输出
2 4 2 2 蛮力法超过了时间限制只有使用二维前缀来进行矩阵和降维,在O(1)的时间内计算出星星的个数。
#include <iostream> #include <vector> using namespace std;int main() {int n;cin >> n;vector<vector<int>> tbl(1001, vector<int>(1001, 0));vector<vector<int>> sum(tbl);int x, y;for (int i = 0; i < n; ++i){cin >> x >> y;tbl[x][y] = 1;}for (int i = 1; i < 1001; ++i){for (int j = 1; j < 1001; ++j){sum[i][j] = tbl[i][j] + sum[i-1][j] + sum[i][j-1] - sum[i-1][j-1];}}int m;cin >> m;int ax, ay, bx, by;for (int i = 0; i < m; ++i){cin >> ax >> ay >> bx >> by;int count = sum[bx][by] + sum[ax-1][ay-1] - sum[bx][ay-1] - sum[ax-1][by];cout << count << endl;}return 0; }
转载于:https://www.cnblogs.com/immjc/p/9229772.html
[NowCoder] 牛牛数星星相关推荐
- 编程题C语言写牛牛数星星,一步一步写算法(之“数星星”)
原文: 一步一步写算法(之"数星星") [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 学过编程的朋友都知道,当初为了学习 ...
- 【题集】一维前缀和-二维前缀和-数星星问题-反复运行时如何降低时间复杂度
目录 1前缀和 1.1一维前缀和 1.2二维前缀和 2.题目 2.1输入描述: 2.2输出描述: 2.3输入 2.4输出 3.题目理解 3.1思路 4.程序 4.1运行结果 1前缀和 1.1一维前缀和 ...
- 题解西电OJ (Problem 1008 - 数星星)
题目内容: Description "不要问我太阳有多高 我会告诉你我有多真 不要问我星星有几颗 我会告诉你很多很多" 一天Qinz和wudired在天上数星星,由于星星可以 ...
- 一步一步写算法(之“数星星”)
[ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 学过编程的朋友都知道,当初为了学习编程语言中的各种语法结构,我们要试着解决各种各样奇怪的题目. ...
- 用ClickHouse在GitHub上数星星
在最大的基友交友网站GitHub上,来自世界各地的开源开发者们进行着数百万个项目.这里每天都有大量的代码文档.修复和提交BUG之类的事件信息产生. 而GitHub Archive项目,正是搜集了这些G ...
- 空间点过程与随机测度(一):从数星星说起
(2010-04-13 08:15:00) 转载▼ 标签: 测度 分类: 数学 空间点过程与随机测度(一):从数星星说起 Blog的更新刚刚恢复,就得到大家的鼓励,真是让我感动,谢谢大家了. 数星星的 ...
- 2021年12月电子学会图形化三级编程题解析含答案:数星星
[此题目来自2021年12月份电子学会] [青少年软件编程(图形化)等级考试试卷(三级)] 三.编程题(共3题,共30分) 36:数星星 Goblin有个很厉害的魔法:他一挥手就可以点亮夜空中五彩斑斓 ...
- 2022年9月青少年软件编程(图形化)等级考试试卷--三级--数星星
数星星 Goblin有个很厉害的魔法:他一挥手就可以点亮夜空中五彩斑斓的星星灯. 1.准备工作 (1)删除小猫角色,添加"Goblin"角色,并删除Goblin角色的造型" ...
- URAL 1028 数星星 题解
URAL 1028 数星星 题解 URAL 1028 题目 Astronomers often examine star maps where stars are represented by poi ...
最新文章
- EEPlat vs saleforce 配置 Knowledge Article 演示样例
- jsp设置背景图片并使得图片扩大到整个屏幕
- matlabpython建模_一直在用Matlab建模,现在Python很火,用学么?
- Javascript异步编程之一异步原理
- 和lua的效率对比测试_Unity游戏开发Lua更新运行时代码!
- 外设单独编址与统一编址
- vue自定义全局和局部指令
- java swing 选项卡_java – 如何通过单击按钮在jTabbedPane中切换选项卡?
- C++socket编程(四):4.1 跨平台封装XTcp类接口
- [链表|多解法] leetcode 19 删除链表的倒数第N个节点
- ZZULIOJ1026-1030Python解法
- matlab多重比较lsd法,多重比较LSD-t值的计算(附证明方法)
- ios客户端学习-手机屏幕尺寸
- mac支持fat32格式吗 mac支持什么格式的移动硬盘
- ubuntu系统20.04 无线网卡QCA6174 wifi不存在或找不到解决方法 红米笔记本
- 容器化运行wine模拟器制作开源代码索引chm文件
- web前端面试题以及相关答案解析
- 创造单词量测试项目(带有Ajax的爬虫)
- 1.1.26 word内容导入PPT
- 华为煤矿军团首登央视 | 发布会金句爆棚