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

做网站颜色如何搭配建设银行泰州江洲路支行网站

做网站颜色如何搭配,建设银行泰州江洲路支行网站,seo学院培训班,做网站放广告收益首先说明#xff0c;CDQ分治与整体二分都是离线算法 CDQ分治#xff1a; 流程#xff1a; 1.我们要解决一系列问题#xff0c;这些问题一般包含修改和查询操作#xff0c;可以把这些问题排成一个序列#xff0c;用一个区间[L,R]表示。 2.分。递归处理左边区间[L,M]和…首先说明CDQ分治与整体二分都是离线算法 CDQ分治 流程 1.我们要解决一系列问题这些问题一般包含修改和查询操作可以把这些问题排成一个序列用一个区间[L,R]表示。 2.分。递归处理左边区间[L,M]和右边区间[M1,R]的问题。 3.治。合并两个子问题同时考虑到[L,M]内的修改对[M1,R]内的查询产生的影响。即用左边的子问题帮助解决右边的子问题。 经典问题三维偏序 #includeiostream #includecstdio #includealgorithm using namespace std; typedef long long ll; const int N100010; const int K200010; struct node{int x,y,z,ans,w; }a[N],b[N]; int tot,cnt[K],k,n; bool cmpx(node a,node b){if(a.xb.x){if(a.yb.y) return a.zb.z;return a.yb.y;}return a.xb.x; } bool cmpy(node a,node b){if(a.yb.y) return a.zb.z;return a.yb.y; } int c[K]; int lowbit(int x){return x(-x);} void add(int i,int x){for(;ik;ilowbit(i))c[i]x; } int sum(int i){int res0;for(;i0;i-lowbit(i))resc[i];return res; } void cdq(int l,int r){if(lr) return;int mid(lr)1;cdq(l,mid);cdq(mid1,r);sort(al,amid1,cmpy);sort(amid1,ar1,cmpy);int imid1,jl;for(;ir;i){while(a[j].ya[i].yjmid){add(a[j].z,a[j].w);j;}a[i].anssum(a[i].z);}for(il;ij;i)add(a[i].z,-a[i].w); } int main(){scanf(%d%d,n,k);for(int i1;in;i){scanf(%d%d%d,b[i].x,b[i].y,b[i].z);}sort(b1,bn1,cmpx);int c0;for(int i1;in;i){c;if(b[i].x!b[i1].x||b[i].y!b[i1].y||b[i].z!b[i1].z){a[tot]b[i];a[tot].wc;c0;}}cdq(1,tot);for(int i1;itot;i)cnt[a[i].ansa[i].w-1]a[i].w;for(int i0;in;i) printf(%d\n,cnt[i]);return 0; } 四维偏序 整体二分 产生原因 对于单个查询而言我们可以采用预处理二分答案的方法解决 但往往我们要回答的是一系列的查询所以我们将所有操作包括修改和查询一起二分进行分治即整体二分。 模板Meteors #includeiostream #includecstdio using namespace std; #define ll long long #define N 300010 inline int read() {char cgetchar(); int x 0, f 1;while(c0||c9){if(c-) f-1; cgetchar();}while(c0c9) xx*10c-0, cgetchar();return x*f; } struct Node{int head,id;ll need; }node[N],node_[N1]; int n,m,k,L[N],R[N]; ll A[N]; int ans[N],nxt[N],to[N],idx; ll tmp[N1]; void add_edge(int a,int b){nxt[idx]node[a].head;to[idx]b;node[a].headidx; } void add(int x,ll y){while(x2*m){tmp[x]y;xx-x;} } ll sum(int x){ll sum0;while(x){sumtmp[x];x-x-x; } return sum; } void solve(int l,int r,int x,int y){if(xy) return;if(lr){for(int ix;iy;i) ans[node[i].id]l;return;}int mid(lr)1,tl0,trn;for(int il;imid;i){add(L[i],A[i]);add(R[i]1,-A[i]);}for(int ix;iy;i){ll tmp10;for(int jnode[i].head;jtmp1node[i].need;jnxt[j])tmp1sum(to[j]m)sum(to[j]);if(tmp1node[i].need) node_[tl]node[i];else node_[tr]node[i],node_[tr].need-tmp1;}for(int il;imid;i){add(L[i],-A[i]),add(R[i]1,A[i]);} for(int i1;itl;i) node[xi-1]node_[i];for(int in1;itr;i) node[xtli-n-1]node_[i];solve(l,mid,x,xtl-1);solve(mid1,r,y-trn1,y); } int main(){scanf(%d%d,n,m);for(int i1,a;im;i){aread();add_edge(a,i);} for(int i1;in;i){node[i].needread();node[i].idi;} scanf(%d,k);for(int i1;ik;i){scanf(%d%d%lld,L[i],R[i],A[i]);} for(int i1;ik;i)if(R[i]L[i]) R[i]m; solve(1,k1,1,n);for(int i1;in;i)ans[i]k1?printf(NIE\n):printf(%d\n,ans[i]); }异同 同 1.都是按时间进行分治 2.代码很像不完全一样这在异中会讲到 3.复杂度都是O(f(n)logn) 异 1.整体二分有二分答案操作 2.适用范围不同
http://www.zqtcl.cn/news/876500/

相关文章:

  • 深圳校园网站建设响应式手机网站制作
  • 景县住房和城乡规划建设局网站我想买个空间自己做网站
  • 网站建设申请计划宣传片拍摄方案模板
  • 网站开发项目经验描述html网站开发事例教程
  • 998元网站建设优化网站建设实训报告心得体会
  • 网站经营性备案流程搜索引擎优化的简写是
  • 长春制作网站南昌建站系统外包
  • 在火炉做网站公园坐什么车hexo wordpress 比较
  • 好的免费博客网站设计图软件
  • 网站建设合同电子版金融网站建设运营方案
  • 网站域名备案在哪里贵阳经济技术开发区网站
  • 戴尔公司网站建设成功的关键是什么网站商城建设公司
  • 用python做 网站论坛南宁网站建设 南宁联达亿
  • 做婚恋网站要多少钱网站首页页面设计多少钱
  • 营销型网站建设试卷wordpress怎么备份按在
  • 手机网站有什么区别是什么意思wordpress 推送公众号
  • 电子商务网站建设与运营app公司管理
  • 网站伪静态怎么设置优就业seo课程学多久
  • 网站开发实战 王做金融必看网站
  • 各种网站建设报价电子商务有限公司官网
  • wordpress前台用户注册网站设计 seo
  • 网站建设存在四个问题html国庆节网页制作代码
  • 棋牌网站搭建平台泡泡资源网
  • 河南网站建设培训wordpress个人博客前台模板下载
  • 做彩票网站电话多少做sohu最好的推广网站
  • 做网站前端广州市住房和建设水务局网站
  • 新手学做网站学哪些知识页优化软件
  • 2014网站怎么备案微信公众号开发网站开发
  • 怎么看一个网站是谁做的怎么做网站内容调研
  • 网站模板 修改erp登录入口