使用线段树,将(1,1+r,1+2r),(2,2+r,2+2r),(3,3+r,3+2r)以此类推,每个看成一个节点,对y进行建树,然后枚举x,维护最大值即可。
代码如下:

#include<cstdio>
#include<algorithm>
#include<string>
#include<vector>
using namespace std;const int maxn=5e5+9;
vector<int>x[maxn];
vector<int>y[maxn];
int num_x[maxn];
int num_y[maxn];
int n,rr;struct node{int l,r,maxn,lazy;
}t[5*maxn];void pushup(int cur)
{t[cur].maxn=max(t[cur<<1].maxn,t[cur<<1|1].maxn);
}void pushdown(int cur)
{if(t[cur].lazy){t[cur<<1].maxn+=t[cur].lazy;t[cur<<1].lazy+=t[cur].lazy;t[cur<<1|1].maxn+=t[cur].lazy;t[cur<<1|1].lazy+=t[cur].lazy;t[cur].lazy=0;}
}
void build(int l,int r,int cur)
{t[cur].l=l;t[cur].r=r;t[cur].maxn=0;t[cur].lazy=0;if(l==r){t[cur].maxn=num_y[l]+num_y[l+rr]+num_y[l+2*rr];return;}int m=(l+r)>>1;build(l,m,cur<<1);build(m+1,r,cur<<1|1);pushup(cur);
}void update_point(int l,int r,int now,int cur,int num)
{if(l==r){t[cur].maxn+=num;t[cur].lazy+=num;return;}pushdown(cur);int m=(l+r)>>1;if(now<=m)update_point(l,m,now,2*cur,num);elseupdate_point(m+1,r,now,2*cur+1,num);pushup(cur);
}int main()
{scanf("%d%d",&n,&rr);for(int i=1;i<=n;i++){int xx,yy;scanf("%d%d",&xx,&yy);xx++,yy++;x[xx].push_back(yy);y[yy].push_back(xx);num_x[xx]++;num_y[yy]++;}build(1,100001,1);int ans=0;for(int i=1;i<=100001;i++){int fuck=0;for(int j=i;fuck!=3;j+=rr){for(int k=0;k<x[j].size();k++){if(x[j][k]-rr>0)update_point(1,100001,x[j][k]-rr,1,-1);if(x[j][k]-2*rr>0)update_point(1,100001,x[j][k]-2*rr,1,-1);update_point(1,100001,x[j][k],1,-1);}fuck++;}fuck=0;ans=max(ans,num_x[i]+num_x[i+rr]+num_x[i+2*rr]+t[1].maxn);for(int j=i;fuck!=3;j+=rr){for(int k=0;k<x[j].size();k++){if(x[j][k]-rr>0)update_point(1,100001,x[j][k]-rr,1,1);if(x[j][k]-2*rr>0)update_point(1,100001,x[j][k]-2*rr,1,1);update_point(1,100001,x[j][k],1,1);}fuck++;}}printf("%d\n",ans);return 0;
}

2019牛客多校第十场 F.Popping Balloons相关推荐

  1. 2019牛客多校第三场 F.Planting Trees

    题目链接 题目链接 题解 题面上面很明显的提示了需要严格\(O(n^3)\)的算法. 先考虑一个过不了的做法,枚举右下角的\((x,y)\),然后二分矩形面积,枚举其中一边,则复杂度是\(O(n^3 ...

  2. 2019牛客多校第七场 F Energy stones 树状数组+算贡献转化模拟

    Energy stones 题意 有n块石头,每块有初始能量E[i],每秒石头会增长能量L[i],石头的能量上限是C[i],现有m次时刻,每次会把[s[i],t[i]]的石头的能量吸干,问最后得到了多 ...

  3. 2019牛客多校训练第十场F Popping Balloons

    2019牛客多校训练第十场F Popping Balloons 题意:二维平面内给你若干个点,然后你可以在x轴和y轴分别射三枪(每一枪的间隔是R),问最多能射掉多少气球. 题解:贪心.这个应该只能算作 ...

  4. 2019牛客多校第四场 I题 后缀自动机_后缀数组_求两个串de公共子串的种类数

    目录 求若干个串的公共子串个数相关变形题 对一个串建后缀自动机,另一个串在上面跑同时计数 广义后缀自动机 后缀数组 其他:POJ 3415 求两个串长度至少为k的公共子串数量 @(牛客多校第四场 I题 ...

  5. 牛客多校第十场F-Popping Balloons

    题目连接 牛客多校F-PoppingBalloons 题意: 用枪打气球,可以横着打三次,竖着打三次,横着打可以把那一行的气球全打下来,竖着打可以把那一列的气球全打下来,但是,每两次相邻的横着打或者竖 ...

  6. 牛客多校第十场 Han Xin and His Troops(扩展中国剩余)

    链接:https://ac.nowcoder.com/acm/contest/890/D 来源:牛客网 题目描述 His majesty chatted with Han Xin about the ...

  7. 2019牛客多校训练营第一场 H题 HOR 题解

    题目描述: 输入描述: 输出描述: 示例1: 题解: 更多问题可关注牛客竞赛区,一个刷题.比赛.分享的社区. 传送门:https://ac.nowcoder.com/acm/contest/discu ...

  8. 2019牛客多校 第七场 B Irreducible Polynomial 多项式因式分解判断

    链接:https://ac.nowcoder.com/acm/contest/887/B 来源:牛客网 Irreducible Polynomial 时间限制:C/C++ 1秒,其他语言2秒 空间限制 ...

  9. 2019牛客多校训练营第一场 E题 ABBA 题解

    问题描述: 输入描述: 输出描述: 示例1: 题解: 更多问题可关注牛客竞赛区,一个刷题.比赛.分享的社区. 传送门:https://ac.nowcoder.com/acm/contest/discu ...

最新文章

  1. python_web框架
  2. 关于无线节能组无线电能输出功率测量
  3. pyqt5切换python版本_PyQt5每天必学之切换按钮_python
  4. RAC起单实例make
  5. http方法_像本地方法一样调用http服务,feign框架springboot项目实践
  6. 部署及配置Lync Server 2013 监控功能
  7. 深入理解 KVC\KVO 实现机制 — KVC
  8. java 数组写法_java书写、数据类型、数组定义
  9. centos mysql 服务器_服务器数据库搭建流程(CentOs+mysql)
  10. ipsec_profile
  11. 48 MM配置-库存管理和实际库存-工厂参数
  12. 微软企业库mysql分页存储_使用微软企业库,非分页sql语句得到分页数据方法
  13. 小白高速变大神,零基础菜鸟应该怎么学编程
  14. java 组播_java使用MulticastSocket实现组播
  15. 纯css实现各种箭头图片效果
  16. linux限制用户登录失败次数
  17. 【CF633H】Fibonacci-ish II 莫队+线段树
  18. 为什么用MongoDB而不用Redis
  19. IDA 逆向代码 --- _stack_chk_guard变量 之后的局部 怎么处理
  20. ViewPager翻页动画失效详解

热门文章

  1. 第一次在我的P200上自己用rviz展现激光雷达数据
  2. 2021年4月26日 星期一 三月十五 阴
  3. 超级实习生提供IT培训吗?能保证技术进大厂实习吗?
  4. 89.网络安全渗透测试—[常规漏洞挖掘与利用篇5]—[文件包含漏洞详解实战示例]
  5. 边际效应以及边际效应的递减规律
  6. Scheduling restart of crashed service解决方案与源码分析
  7. 电脑连上wifi显示网络正常 但是网页打不开
  8. 程序员兼职私活的网站
  9. ObjectARX编程工具所有版本下载地址(最新含ObjectARX 2017)
  10. Ldap集成Ranger应用服务