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

怎么建设个网站上海啥情况

怎么建设个网站,上海啥情况,天津建设网证件查询,有没有免费查公司的软件A simple rmq problem 题目大意#xff1a;给定一个长度为$n$的序列#xff0c;给出$m$个询问#xff1a;在$[l,r]$之间找到一个在这个区间里只出现过一次的最大的数。 注释#xff1a;$1\le n\le 10^5$#xff0c;$1\le mle 2\cdot 10^5$。 想法#xff1a; 我的第一想法…A simple rmq problem 题目大意给定一个长度为$n$的序列给出$m$个询问在$[l,r]$之间找到一个在这个区间里只出现过一次的最大的数。 注释$1\le n\le 10^5$$1\le mle 2\cdot 10^5$。 想法 我的第一想法是莫队。 结果发现是强制在线离线我也不会... 想了想其实$KD-Tree$还是比较显然的。 我们设$l_i$表示$a_i$上一次出现的位置$r_i$表示下一次。 紧接着我们把第$i$个数转化为三维坐标轴上的点$(l_i,i,r_i)$。 用$KD-Tree$维护直接查即可。 Code #include iostream #include cstdio #include cstring #include algorithm #define N 100010 using namespace std; int v[N],lst[N],dic[N],nxt[N],d,l,r,ans,rt; char *p1,*p2,buf[100000]; #define nc() (p1p2(p2(p1buf)fread(buf,1,100000,stdin),p1p2)?EOF:*p1) int rd() {int x0,f1; char cnc(); while(c48) {if(c-) f-1; cnc();} while(c47) x(((x2)x)1)(c^48),cnc(); return x*f;} inline void Max(int x,int y) {xxy?x:y;} inline void Min(int x,int y) {xxy?x:y;} struct Node {int p[3],mx[3],mn[3],ans,size,val,ls,rs;}a[N]; inline bool cmp(const Node a,const Node b) {for(int i0;i3;i) if(a.p[(di)%3]!b.p[(di)%3]) return a.p[(di)%3]b.p[(di)%3];return true; } inline void pushup(int x,int k) {a[x].sizea[k].size;for(int i0;i3;i) Max(a[x].mx[i],a[k].mx[i]),Min(a[x].mn[i],a[k].mn[i]);Max(a[x].ans,a[k].ans); } int build(int l,int r,int now) {int mid(lr)1;dnow; nth_element(al,amid,ar1,cmp);for(int i0;i3;i) a[mid].mx[i]a[mid].mn[i]a[mid].p[i];a[mid].ansa[mid].val;if(lmid) a[mid].lsbuild(l,mid-1,(now1)%3),pushup(mid,a[mid].ls);if(midr) a[mid].rsbuild(mid1,r,(now1)%3),pushup(mid,a[mid].rs);return mid; } bool judge(int x) {return a[x].ansansa[x].mx[0]la[x].mn[0]ra[x].mn[1]la[x].mx[2]r; } void query(int x) {if(!x||!judge(x)) return;if(a[x].p[0]la[x].p[0]ra[x].p[1]la[x].p[2]r) Max(ans,a[x].val);query(a[x].ls); query(a[x].rs); } int main() {int nrd(),mrd();for(int i1;in;i) v[i]rd(),lst[i]dic[v[i]],nxt[dic[v[i]]]i,dic[v[i]]i;for(int i1;in;i) a[i].p[0]i,a[i].p[1]lst[i],a[i].p[2]nxt[i]?nxt[i]:n1,a[i].valv[i];rtbuild(1,n,0); while(m--){l(rd()ans)%n1,r(rd()ans)%n1; if(lr) swap(l,r);ans0,query(rt); printf(%d\n,ans);}return 0; }小结$KD-Tree$虽然是一个暴力但是它的思想还是非常不错的。转载于:https://www.cnblogs.com/ShuraK/p/10243973.html
http://www.pierceye.com/news/832576/

相关文章:

  • 密云建设银行招聘网站万网网站备份
  • 企业网站建设网站优化推广站群网站建设推广
  • 深圳市多语言网站建设公司营销网站建设公司哪家好
  • 网站推广是怎么做的仿腾讯网站源码
  • 北京市建设工程信息网站网站建设需要域名吗?
  • 做金融的网站有哪些阳江房地产信息网官方网站
  • h5能做网站开发吗黑链 对网站的影响
  • 专门做设计文案的网站wordpress 建站服务
  • 网站快速排名公司wordpress 插件 原理
  • 网站制作需要学什么公司网站管理属于什么职位
  • 南通专业企业门户网站设计学校怎么创建网站
  • 网站策划与建设阶段的推广方法中国建设教育协会安全员证
  • 建设银行网站用户名更改分销微信小程序开发
  • 荣成做网站的公司百度地图 wordpress
  • 扁平设计网站湖南健康二维码app下载安装
  • 大连成久建设工程有限公司网站针对爬虫爬取做的优化
  • 建设官方网站企业网银登录网站版面设计
  • 网站建设学什么软件怎样创建自己的公众号
  • 网站脑图怎么做云伙伴小程序开发公司
  • 网站设置兼容模式怎么弄wordpress文件架构
  • 网站模块顺序调整网易对象存储wordpress
  • 深圳网络建设网站郑州网站优化服务
  • 辽阳专业建设网站公司网站html动态效果代码
  • 微信上可以做网站吗网页设计作业讲解
  • 长春好的做网站公司潍坊 网站
  • 做网站自己装服务器谷歌排名规则
  • 58.搜房等网站怎么做效果才好商贸公司企业简介模板
  • 中国最早做网站是谁卖网站怎样做
  • 张店专业网站优化哪家好书画工作室网站模板网站建设
  • 兰州网站制作怎么样青海哪家做网站的公司最大