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

天津公司建站域名 空间 网站制作

天津公司建站,域名 空间 网站制作,上海天华建筑设计有限公司地址,wordpress 友情链接页[Code#3]寻找车位 挺厉害的线段树题 mn#xff0c;所以n2000,并且只有1000次修改询问#xff0c;mqlogn的复杂度可以接受#xff01; 求全局#xff1f; 对行(n)建一个线段树。 线段树中维护的东西#xff0c;一定可以包含所有“完全包含在”这个横条中的最大正方…[Code#3]寻找车位  挺厉害的线段树题 mn所以n2000,并且只有1000次修改询问mqlogn的复杂度可以接受  求全局 对行(n)建一个线段树。 线段树中维护的东西一定可以包含所有“完全包含在”这个横条中的最大正方形。 只在mid左、右的可以递归下去再取max跨越中间的 大小为1000的两个数组维护区间两端的1000个位置的从左从右开始最长1的个数 线段树pushup的时候 考虑跨过mid的正方形 不妨考虑长方形 宽长 纵向下来的是宽双指针l,r 横向的是长 不断往后走r 如果r-l1lsmin(l,r)rsmin(l,r) 那么l 保证宽小于等于长 宽大于长的会在宽小的时候统计到 相当于枚举对于r的时候最靠上的宽小于等于长的位置l 因为ans取决于短边也就是宽 一定有单调性所以l直接即可 lsmin(l,r)rsmin(l,r)额外用单调队列维护 子矩形 先通过线段树把子矩形劈成logn段就暂时消除了行宽的限制 直接做的话对于完整的一个线段树区域还要暴力枚举每个行中线的就O(q*n^2logn)了 然鹅 对于每一个中线mid设之前单调队列找到的边长是r[x][i]那么就是min(r[x][i],i-U1)来贡献答案。UD是列的限制 都是对i-U1取min那么r[x][i]一定就是选择最大的那一个。 所以 每个区间再维护一个R[i]所有r[i]的max 这样保证了子矩形分到完整的区间的时候可以直接做完return了。复杂度就能正确 对于query时往两侧都分治的区间要再统计跨区间的最大正方形 这时最大1的长度就要和行的限制取min了。 queue用个pair存   代码 动态分内存 #includebits/stdc.h #define reg register int #define il inline #define numb (ch^0) #define mid ((lr)1) #define ls (x1) #define rs (x1|1) #define fi first #define se second using namespace std; typedef long long ll; il void rd(int x){char ch;x0;bool flfalse;while(!isdigit(chgetchar()))(ch-)(fltrue);for(xnumb;isdigit(chgetchar());xx*10numb);(fltrue)(x-x); } namespace Miracle{ const int N4e610; int n,m,q; int *lmx[4*N],*rmx[4*N],*ans[4*N]; int Pool[14*N],*curPool,*mp[N]; struct que{int l,r;pairint,intq[N]; // void p_f(int L){ // while(lrq[l]L) l; // }void push(int id,int v){while(lrq[r].sev) --r;q[r]make_pair(id,v);}int get(int L){while(lrq[l].fiL) l;if(lr) return q[l].se;else return -1;}void clear(){l1,r0;} }Q1,Q2; void pushup(int x,int l,int r){Q1.clear();Q2.clear();int j1;for(reg i1;im;i){Q1.push(i,rmx[ls][i]);Q2.push(i,lmx[rs][i]);while(ijQ1.get(j)Q2.get(j)i-j1){j;}ans[x][i]i-j1;}for(reg i1;im;i){ans[x][i]max(ans[x][i],max(ans[ls][i],ans[rs][i]));lmx[x][i](lmx[ls][i]mid-l1)?lmx[ls][i]lmx[rs][i]:lmx[ls][i];rmx[x][i](rmx[rs][i]r-mid)?rmx[rs][i]rmx[ls][i]:rmx[rs][i];} } void build(int x,int l,int r){lmx[x]cur;curm1;rmx[x]cur;curm1;ans[x]cur;curm1;if(lr){for(reg i1;im;i){ans[x][i]rmx[x][i]lmx[x][i]mp[l][i];}return;}build(x1,l,mid);build(x1|1,mid1,r);pushup(x,l,r); } void upda(int x,int l,int r,int p,int t,int c){if(lr){ans[x][t]rmx[x][t]lmx[x][t]c;return;}if(pmid) upda(x1,l,mid,p,t,c);else upda(x1|1,mid1,r,p,t,c);pushup(x,l,r); } int mx; void merge(int x,int l,int r,int L,int R,int U,int D){Q1.clear();Q2.clear();int jU;for(reg iU;iD;i){Q1.push(i,min(mid-L1,rmx[ls][i]));Q2.push(i,min(R-mid,lmx[rs][i]));while(ijQ1.get(j)Q2.get(j)i-j1){j;}mxmax(mx,i-j1);} } void query(int x,int l,int r,int L,int R,int U,int D){if(LlrR){for(reg iU;iD;i){mxmax(mx,min(ans[x][i],i-U1));}return;}if(LmidmidR) {query(x1,l,mid,L,R,U,D);query(x1|1,mid1,r,L,R,U,D);merge(x,l,r,L,R,U,D);}else if(Lmid){query(x1,l,mid,L,R,U,D);}else{query(x1|1,mid1,r,L,R,U,D);} }int main(){rd(n);rd(m);rd(q);Q1.clear();Q2.clear();for(reg i1;in;i){mp[i]cur;curm1;for(reg j1;jm;j){rd(mp[i][j]);}}build(1,1,n);int x,y,l,s,r,t;int op;while(q--){rd(op);if(op0){rd(x);rd(y);mp[x][y]^1;upda(1,1,n,x,y,mp[x][y]);}else{mx0;rd(l);rd(s);rd(r);rd(t);query(1,1,n,l,r,s,t);printf(%d\n,mx);}}return 0; }} signed main(){Miracle::main();return 0; }/*Author: *Miracle*Date: 2019/2/13 21:22:39 */ 总结抓住mn性质对长的n建线段树区间维护信息时候处理跨域mid的最大正方形。 灵活运用单调队列。转载于:https://www.cnblogs.com/Miracevin/p/10372696.html
http://www.pierceye.com/news/435960/

相关文章:

  • 企业网站建设需要提供什么内容电子商务网站搜索引擎设计
  • 免费关键词挖掘网站微信网页版下载 官方
  • 品牌设计公司品牌设计公司排名百家号优化上首页
  • 广州网站车管所深圳东门大厦
  • 门户网站 建设商 排名网站下载的视频怎么变成本地视频
  • 国外品牌设计网站中华始祖堂室内设计
  • 建设网站服务无极最新招聘
  • 广东省建设教育协会是什么网站揭东建设局网站
  • 那家专门做特卖的网站godaddy 搭建网站
  • 网络舆情处置的五个步骤新人学会seo
  • 网站开发要做什么在线网页转pdf
  • 购物网站开发教程中文如何调整wordpress页面的顺序
  • 网站网页设计制作教程成都外贸seo
  • 网站开发的资料设备英国搜索引擎
  • 什么样企业需要网站建设网络规划毕业设计
  • 广东制作公司网站和谐校园网站建设
  • 找潍坊做网站的h5用什么软件做的
  • 南宁网站推广费用0505网页制作与网站建设
  • 2345电视剧网站免费电子营业执照
  • 河北省沧州建设厅网站怎样保存网站资料 做证据
  • 网站同时做竞价和优化可以吗做网站游戏推广赚钱吗
  • 台州建站模板搭建上海远程教育网站设计与开发公司
  • 网站如何做淘客类似58同城分类信息网站开发
  • 网站源码文件安装教程苏州网站建设致宇
  • 免费注册域名网站知乎做网站做图电脑需要什么配置
  • 高埗做网站营销策略分析包括哪些内容
  • wordpress获取站点链接网站门户
  • flashxml网站模板网站后期培训机构全国排名
  • 企业网站设计网站页面设计中为什么要有优先级排列
  • 暗网是什么网站滨江区网站开发公司