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

北京免费网站建设模板下载邯郸网站制作地方

北京免费网站建设模板下载,邯郸网站制作地方,长沙建站费用,dede自适应网站模板正题 题目链接:https://www.51nod.com/Contest/Problem.html#contestProblemId1150 题目大意 给出两颗nnn个点的树#xff0c;求有多少个点(i,j)(i,j)(i,j)对使得在两棵树中iii都是jjj的祖先。 解题思路 在dfsdfsdfs序中一个节点的孩子是在一个连续的区间中的。所以对于第一…正题 题目链接:https://www.51nod.com/Contest/Problem.html#contestProblemId1150 题目大意 给出两颗nnn个点的树求有多少个点(i,j)(i,j)(i,j)对使得在两棵树中iii都是jjj的祖先。 解题思路 在dfsdfsdfs序中一个节点的孩子是在一个连续的区间中的。所以对于第一棵树的每个节点的区间都作为询问用莫队进行排序。 之后区间每次加入一个节点我们就在线段树中给另一棵树该节点对应的dfsdfsdfs序位置111然后询问即可。 codecodecode #includecstdio #includecstring #includealgorithm #includeiostream #includecmath using namespace std; const int N110000; struct edge_node{int to,next; }e1[N*2],e2[N*2]; struct tree_node{int l,r,w,lazy,num; }; struct ques_node{int l,r,id,pos; }q[N]; bool cmp(ques_node x,ques_node y){return x.posy.pos||(x.posy.posx.ry.r); } int n,tot1,tot2,cnt,w,t,ans; int dfn1[N],rfn1[N],ed1[N],ls1[N]; int dfn2[N],rfn2[N],ed2[N],ls2[N]; struct LineTree{tree_node t[N*4];void Build(int x,int l,int r){t[x].ll;t[x].rr;if(lr)return;int mid(lr)/2;Build(x*2,l,mid);Build(x*21,mid1,r);}int Ask(int x,int l,int r){if(t[x].llt[x].rr)return t[x].w;int mid(t[x].lt[x].r)/2;if(rmid) return Ask(x*2,l,r);if(lmid) return Ask(x*21,l,r);return Ask(x*2,l,mid)Ask(x*21,mid1,r); }void Change(int x,int pos,int num){if(t[x].lt[x].r){t[x].wnum;return;}if(post[x*2].r) Change(x*2,pos,num);else Change(x*21,pos,num);t[x].wt[x*2].wt[x*21].w;} }Tree; void add1(int x,int y) {e1[tot1].toy;e1[tot1].nextls1[x];ls1[x]tot1; } void add2(int x,int y) {e2[tot2].toy;e2[tot2].nextls2[x];ls2[x]tot2; } void dp1(int x,int fa) {rfn1[x]cnt;dfn1[cnt]x;for(int ils1[x];i;ie1[i].next){int ye1[i].to;if(yfa) continue;dp1(y,x);}ed1[x]cnt; } void dp2(int x,int fa) {rfn2[x]cnt;dfn2[cnt]x;for(int ils2[x];i;ie2[i].next){int ye2[i].to;if(yfa) continue;dp2(y,x);}ed2[x]cnt; } int main() {scanf(%d,n);tsqrt(n);for(int i1;in;i){int x,y;scanf(%d%d,x,y);add1(x,y);add1(y,x);}for(int i1;in;i){int x,y;scanf(%d%d,x,y);add2(x,y);add2(y,x);}dp1(1,1);cnt0;dp2(1,1);Tree.Build(1,1,n);for(int i1;in;i)q[i].lrfn1[i],q[i].red1[i],q[i].idi,q[i].pos(q[i].l-1)/t1;sort(q1,q1n,cmp);int l1,r0;for(int i1;in;i){while(lq[i].l) Tree.Change(1,rfn2[dfn1[--l]],1);while(rq[i].r) Tree.Change(1,rfn2[dfn1[r]],1);while(lq[i].l) Tree.Change(1,rfn2[dfn1[l]],-1);while(rq[i].r) Tree.Change(1,rfn2[dfn1[r--]],-1);ansTree.Ask(1,rfn2[q[i].id],ed2[q[i].id])-1;}printf(%d,ans); }
http://www.yutouwan.com/news/99624/

相关文章:

  • 网站建设常用工具免费公司网站设计
  • 北京兼职做网站建设网站建设域名服务器
  • 超值高端网站设计如何做免费的网站推广
  • 上海南建设培训执业中心网站襄阳网络推广公司
  • 云南网站制作需求支付公司网站建设费账务处理
  • 哪里可以做公司网站做原型的网站
  • 猪八戒设计网站如何做兼职建设商务网站需要哪些步骤
  • 网站的关于我们怎么做wordpress运行php 404错误
  • 三拼域名做网站网站内容描述
  • 网站正在建设中 html5营销型网站建设的利与弊
  • 中国建设银行ie下载网站本地网站做不大
  • 电子商务网站建设的代码文字生成网址
  • seo怎么做网站排名微做网站
  • 河北提供网站建设公司哪家好江苏住房和城乡建设厅网站报考
  • 个人站长做网站如何做网站宣传片
  • 广州天河区网站设计公司wordpress目录图片
  • 代做网站转账截图怎么做祝福网站
  • 想做网站wordpress hotlink protection
  • 贵阳做网站好的公司有哪些WordPress面包屑主题
  • 北京丰台区网站建设公司做的网站怎么上传到网上
  • 网站建设技术文档在县城怎么做网站公司
  • crm系统 网站建设icon图标素材下载网站
  • 网站备案需要注意什么益阳seo网站建设
  • 自建网站做淘宝联盟龙岗龙城街道网站建设
  • 武功做网站移动选号码网上选号手机号
  • 营销型网站建设推来客网络企业网站 单页
  • php儿童摄影网站源码建筑施工企业
  • 企业网站开发价钱低asp业务网站
  • 校园社交网站开发企业在网站推广
  • 11免费建网站重庆网站网络推广推广