bzoj1382 1935: [Shoi2007]Tree 园丁的烦恼
1935: [Shoi2007]Tree 园丁的烦恼
Time Limit: 15 Sec Memory Limit: 357 MB
Submit: 1261 Solved: 578
[Submit][Status][Discuss]
Description
Input
Output
Sample Input
0 0
0 1
1 0
0 0 1 1
Sample Output
- #include<cstdio>
- #include<cstring>
- #include<algorithm>
- #define G *++ptr
- #define LL int
- using namespace std;
- char buf[],*ptr=buf-;
- const int M=1e6+;
- int read(){
- int x=,f=,c=G;
- while(c<)c=='-'&&(f=-),c=G;
- while(c>)x=x*+c-,c=G;
- return x*f;
- }
- LL ans[M],s[*M],xs[*M];
- int n,m,xp,qp,ep;
- int lowbit(int x){return x&-x;}
- void add(int x,LL v){
- while(x<=xp){
- s[x]+=v;
- x+=lowbit(x);
- }
- }
- LL query(int x){
- LL ans=;
- while(x>){
- ans+=s[x];
- x-=lowbit(x);
- }
- return ans;
- }
- struct Q{
- LL l,r,h,id,s;
- bool operator <(const Q& x)const{return h<x.h;}
- void calc(){
- ans[id]+=(query(r)-query(l-))*s;
- }
- }q[*M];
- struct pos{
- LL x,y,w;
- bool operator <(const pos& h)const{return y<h.y;}
- void calc(){
- add(x,w);
- }
- }e[M];
- void $(LL &x){x=lower_bound(xs+,xs+xp+,x)-xs;}
- int main()
- {
- fread(buf,,sizeof(buf),stdin)[buf]=;
- LL x,y,hx,hy;
- n=read(); m=read();
- for(int i=;i<=n;i++){
- x=read(); y=read();
- e[ep++]=(pos){xs[++xp]=x,y,};
- }
- sort(xs+,xs+xp+);
- for(int i=;i<ep;i++) $(e[i].x);
- for(int i=;i<=m;i++){
- x=read(); y=read(); hx=read(); hy=read();
- x=lower_bound(xs+,xs+xp+,x)-xs;
- hx=upper_bound(xs+,xs+xp+,hx)-xs-;
- q[qp++]=(Q){x,hx,y-,i,-};
- q[qp++]=(Q){x,hx,hy,i,};
- }
- sort(e,e+ep);
- sort(q,q+qp);
- for(int i=,j=;i<qp;i++){
- while(j<ep&&e[j].y<=q[i].h) e[j++].calc();
- q[i].calc();
- }
- for(int i=;i<=m;i++) printf("%d\n",ans[i]);
- return ;
- }
bzoj1382 1935: [Shoi2007]Tree 园丁的烦恼的更多相关文章
- BZOJ 1935: [Shoi2007]Tree 园丁的烦恼( 差分 + 离散化 + 树状数组 )
假如矩阵范围小一点就可以直接用二维树状数组维护. 这道题, 差分答案, 然后一维排序, 另一维离散化然后树状数组维护就OK了. ----------------------------------- ...
- 1935: [Shoi2007]Tree 园丁的烦恼
1935: [Shoi2007]Tree 园丁的烦恼 Time Limit: 15 Sec Memory Limit: 357 MBSubmit: 648 Solved: 273[Submit][ ...
- BZOJ 1935: [Shoi2007]Tree 园丁的烦恼 +CDQ分治
1935: [Shoi2007]Tree 园丁的烦恼 参考与学习:https://www.cnblogs.com/mlystdcall/p/6219421.html 题意 在一个二维平面中有n颗树,有 ...
- bzoj 1935: [Shoi2007]Tree 园丁的烦恼
Description 很久很久以前,在遥远的大陆上有一个美丽的国家.统治着这个美丽国家的国王是一个园艺爱好者,在他的皇家花园里种植着各种奇花异草.有一天国王漫步在花园里,若有所思,他问一个园丁道: ...
- BZOJ 1935: [Shoi2007]Tree 园丁的烦恼 [树状数组 离线 离散化]
传送门 刚才我还在郁闷网上怎么没人用$CDQ$分治做 突然发现根本没有时间序.... #include<iostream> #include<cstdio> #include& ...
- BZOJ.1935.[SHOI2007]Tree园丁的烦恼(CDQ分治 三维偏序)
题目链接 矩形查询可以拆成四个点的前缀和查询(树套树显然 但是空间不够) 每个操作表示为(t,x,y),t默认有序,对x分治,y用树状数组维护 初始赋值需要靠修改操作实现. //119964kb 43 ...
- [bzoj1935][shoi2007]Tree 园丁的烦恼(树状数组+离线)
1935: [Shoi2007]Tree 园丁的烦恼 Time Limit: 15 Sec Memory Limit: 357 MBSubmit: 980 Solved: 450[Submit][ ...
- BZOJ1935: [Shoi2007]Tree 园丁的烦恼
1935: [Shoi2007]Tree 园丁的烦恼 Time Limit: 15 Sec Memory Limit: 357 MBSubmit: 552 Solved: 220[Submit][ ...
- bzoj千题计划143:bzoj1935: [Shoi2007]Tree 园丁的烦恼
http://www.lydsy.com/JudgeOnline/problem.php?id=1935 二维偏序问题 排序x,离散化树状数组维护y #include<cstdio> #i ...
随机推荐
- Windows下如何安装composer
相对 来说并不难直接将此文件下载安装即可 1 https://getcomposer.org/Composer-Setup.exe 文件地址由官方提供 https://getcomposer.org/ ...
- CentOS7 配置环境
1.安装CentOS 配置环境 (1)虚拟机中安装CentOS,进入系统使用yum命令不止正常执行…… 原因: 需要设置网卡激活 解决方法: vi /etc/sysconfig/network-scr ...
- python—— 文件的打开模式和文件对象方法 & os、os.path 模块中关于文件、目录常用的函数使用方法
引用自“鱼c工作室” 文件的打开模式和文件对象方法 : https://fishc.com.cn/forum.php?mod=viewthread&tid=45279&ext ...
- win10 解决“ 'g++' 不是内部或外部命令,也不是可运行的程序或批处理文件”的问题
https://www.jianshu.com/p/9bffbaf12bed 2. 安装MinGW 将MinGW安装在D:\mingw文件夹下(可自由选择,这里为之后添加环境变量作为范例) 安装好后选 ...
- python开发基础之字符编码、文件处理和函数基础
字符编码 为什么要有字符编码? 字符编码是为了让计算机能识别我们人写的字符,因为计算机只认识高低电平,也就是二进制数"0","1". 一个文件用什么编码方式存储 ...
- Mysql 表转换成 Sqlite表
目前的转换仅仅支持对没有外键的Mysql数据表 准备: 下载安装 Sqlite Expert 软件 一 获取Mysql中的.sql文件,获取过程省略可以直接导出sql文件 二 在Sqlite Expe ...
- [bzoj1999][noip2007]Core树网的核
好久没写题解了.这题不算太水就写一下题解. 话说回来,虽然不水但是挺裸.可以说题意即一半题解了. 我猜粘了题面也没有人去看的,所以直接人话题意了. 给一棵树,点数1e6,(当年noip的n当然是只有3 ...
- android gridview 停止滚动
http://blog.csdn.net/yaphetzhao/article/details/50544105 参考上面的博客,关键代码我就贴出来吧: public void stopGridVie ...
- 线性表(List)
1.什么是线性表(List)? 零个或多个数据元素的有限序列. (1)元素之间是有序的. (2)线性表强调是有限的. 2.线性表有哪些操作? (1)线性表的创建和初始化,InitList (2)判空, ...
- 获取IMSI
转:http://letsunlockiphone.guru/find-imsi-number/ HOW TO FIND IMSI NUMBER (UPDATED) You probably alre ...