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

德清县建设局网站成都网站优化排名推广

德清县建设局网站,成都网站优化排名推广,网站做的最好的网站有哪些,以域名做网站关键词传送门:牛客 题目描述 Cow Land 总共有 NNN 个不同的景点( 2≤N≤1052 \leq N \leq 10^52≤N≤105 )。 一共有 n−1n-1n−1 条道路连接任意两个景点,这意味着任意两个景点间只有一条简单路径。 每个景点 iii 都有一个享受值 eie_iei​ &…

传送门:牛客

题目描述

Cow Land 总共有 NNN 个不同的景点( 2≤N≤1052 \leq N \leq 10^52N105 )。 一共有 n−1n-1n1 条道路连接任意两个景点,这意味着任意两个景点间只有一条简单路径。
每个景点 iii 都有一个享受值 eie_iei ,这个值可能会改变。因为一些景点在早上更有吸引力,而其他景点在下午则更能吸引游客。
从景点 iii 到景点 jjj 的奶牛们可以欣赏从景点 iii 到景点 jjj 的路上的所有景观。这条路线的享受值为景点 iii 到景点 jjj 的路上的所有景点(包括景点 iii 和景点 jjj )的享受值按位进行异或运算的结果。
请帮助奶牛确定他们前往 Cow Land 旅行时计划的路线的享受值。

输入:
5 5
1 2 4 8 16
1 2
1 3
3 4
3 5
2 1 5
1 1 16
2 3 5
2 1 5
2 1 3
输出:
21
20
4
20

一道维护树上区间异或的题目

首先是对树上进行区间异或,所以此时我们需要使用树链剖分将树形结构分解为线性结构,那么此时我们的问题就变成了如何对一个区间的区间异或值进行维护

其实呢,这道题除了树链剖分操作之外的操作和这道题基本上时一样的.可以先去做做那道题再来做本题

简单来说,也就是对于一个区间来说,我们不能直接使用线段树来维护区间异或和,但是我们可以使用线段树来维护区间每一个位的二进制位1的总数(因为0并不影响异或结果).也就是说对于每一个数字,我们都将其二进制化,然后求一下每一个区间每一个二进制位的1的总数即可.对于最终的答案,既然我们已经知道了每一个二进制位1的个数,对于二进制位1的个数为偶数的位置,此时我们异或的最终结果肯定是0,反之则为1.然后我们再求一下最终异或出来的二进制转化为十进制即可

但是牛客上给的内存十分的少,可能是爬题的时候遗留下来的问题,所以对于我的代码会导致MLE,但是洛谷上是可以轻松AC的,可能是因为这个原因导致牛客上AC的代码极少

下面是具体的代码部分:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define root 1,n,1
#define ls rt<<1
#define rs rt<<1|1
#define lson l,mid,rt<<1
#define rson mid+1,r,rt<<1|1
inline ll read() {ll x=0,w=1;char ch=getchar();for(;ch>'9'||ch<'0';ch=getchar()) if(ch=='-') w=-1;for(;ch>='0'&&ch<='9';ch=getchar()) x=x*10+ch-'0';return x*w;
}
#define maxn 100007
const double eps=1e-8;
#define	int_INF 0x3f3f3f3f
#define ll_INF 0x3f3f3f3f3f3f3f3f
int fa[maxn],Size[maxn],max_son[maxn],dep[maxn];
vector<int>edge[maxn];
void dfs1(int u,int per_u) {Size[u]=1;for(int i=0;i<edge[u].size();i++) {int v=edge[u][i];if(v==per_u) continue;dep[v]=dep[u]+1;dfs1(v,u);fa[v]=u;Size[u]+=Size[v];if(Size[v]>Size[max_son[u]]) {max_son[u]=v;}}
}
int top[maxn],id[maxn],rev[maxn],tot=0;
void dfs2(int u,int t) {top[u]=t;id[u]=++tot;rev[tot]=u;if(!max_son[u]) return ;dfs2(max_son[u],t);for(int i=0;i<edge[u].size();i++) {int v=edge[u][i];if(v==fa[u]||v==max_son[u]) continue;dfs2(v,v);}
}
struct Segment_tree{int l,r,bit1[33];
}tree[maxn*4];int w[maxn];
void pushup(int rt) {for(int i=1;i<=32;i++) {tree[rt].bit1[i]=tree[ls].bit1[i]+tree[rs].bit1[i];}
} 
void build(int l,int r,int rt) {tree[rt].l=l;tree[rt].r=r;if(l==r) {int num=w[rev[l]];for(int i=1;i<=32;i++) {tree[rt].bit1[i]=num&1;if(num) num>>=1;}return ;}int mid=(l+r)>>1;build(lson);build(rson);pushup(rt);
}
void update(int pos,int rt,int val) {if(tree[rt].l==pos&&tree[rt].r==pos) {int num=val;for(int i=1;i<=32;i++) {tree[rt].bit1[i]=num&1;if(num) num>>=1;}return ;}int mid=(tree[rt].l+tree[rt].r)>>1;if(pos<=mid) update(pos,ls,val);else update(pos,rs,val);pushup(rt);
}
int ans[33];
void query(int l,int r,int rt) {if(tree[rt].l==l&&tree[rt].r==r) {for(int i=1;i<=32;i++) {ans[i]+=tree[rt].bit1[i];}return ;}int mid=(tree[rt].l+tree[rt].r)>>1;if(r<=mid) query(l,r,ls);else if(l>mid) query(l,r,rs);else query(l,mid,ls),query(mid+1,r,rs);
}
int get_num() {int Ans=0;for(int i=1;i<=32;i++) {if(ans[i]&1) ans[i]=1;else ans[i]=0;}int k=1;for(int i=1;i<=32;i++) {Ans+=ans[i]*k;k*=2;}return Ans;
}
int ask(int u,int v) {memset(ans,0,sizeof(ans));while(top[u]!=top[v]) {if(dep[top[u]]<dep[top[v]]) swap(u,v);query(id[top[u]],id[u],1);u=fa[top[u]];}if(dep[u]>dep[v]) swap(u,v);query(id[u],id[v],1);return get_num();
}
int n,q;
int main() {n=read();q=read();for(int i=1;i<=n;i++) w[i]=read();for(int i=1;i<=n-1;i++) {int u=read(),v=read();edge[u].push_back(v);edge[v].push_back(u);}dfs1(1,0);dfs2(1,1);build(1,tot,1);for(int i=1;i<=q;i++) {int opt=read();if(opt==1) {int u=read(),val=read();update(id[u],1,val);}else {int u=read(),v=read();printf("%d\n",ask(u,v));}}return 0;
}

文章转载自:
http://dehydrogenation.zpfr.cn
http://granger.zpfr.cn
http://demosthenes.zpfr.cn
http://intrazonal.zpfr.cn
http://makable.zpfr.cn
http://trombonist.zpfr.cn
http://pippa.zpfr.cn
http://danny.zpfr.cn
http://docking.zpfr.cn
http://presidency.zpfr.cn
http://flax.zpfr.cn
http://merl.zpfr.cn
http://gory.zpfr.cn
http://presenility.zpfr.cn
http://cheapside.zpfr.cn
http://afric.zpfr.cn
http://leuco.zpfr.cn
http://kab.zpfr.cn
http://forthcoming.zpfr.cn
http://confessingly.zpfr.cn
http://herbivorous.zpfr.cn
http://gabby.zpfr.cn
http://regain.zpfr.cn
http://soliloquize.zpfr.cn
http://dinerout.zpfr.cn
http://obvious.zpfr.cn
http://mmpi.zpfr.cn
http://drachm.zpfr.cn
http://orgastic.zpfr.cn
http://cero.zpfr.cn
http://blow.zpfr.cn
http://matelot.zpfr.cn
http://apologetics.zpfr.cn
http://charter.zpfr.cn
http://americanization.zpfr.cn
http://teat.zpfr.cn
http://imperia.zpfr.cn
http://finesse.zpfr.cn
http://affluent.zpfr.cn
http://sticking.zpfr.cn
http://hemispherectomy.zpfr.cn
http://molybdate.zpfr.cn
http://reviser.zpfr.cn
http://neptune.zpfr.cn
http://hosepipe.zpfr.cn
http://realize.zpfr.cn
http://foreword.zpfr.cn
http://wangan.zpfr.cn
http://argus.zpfr.cn
http://paigle.zpfr.cn
http://soho.zpfr.cn
http://protoplanet.zpfr.cn
http://tonsil.zpfr.cn
http://slopehead.zpfr.cn
http://hematology.zpfr.cn
http://standardization.zpfr.cn
http://vain.zpfr.cn
http://not.zpfr.cn
http://basset.zpfr.cn
http://huarache.zpfr.cn
http://clerkess.zpfr.cn
http://moule.zpfr.cn
http://catena.zpfr.cn
http://icao.zpfr.cn
http://pelite.zpfr.cn
http://pool.zpfr.cn
http://dentosurgical.zpfr.cn
http://murices.zpfr.cn
http://disulfoton.zpfr.cn
http://jeanne.zpfr.cn
http://unwrought.zpfr.cn
http://groceryman.zpfr.cn
http://school.zpfr.cn
http://neuroblast.zpfr.cn
http://moonwatcher.zpfr.cn
http://plait.zpfr.cn
http://rudderstock.zpfr.cn
http://skippingly.zpfr.cn
http://docetism.zpfr.cn
http://devitaminize.zpfr.cn
http://holocene.zpfr.cn
http://epically.zpfr.cn
http://stalk.zpfr.cn
http://lowlander.zpfr.cn
http://ciseleur.zpfr.cn
http://thai.zpfr.cn
http://princeton.zpfr.cn
http://floristics.zpfr.cn
http://wright.zpfr.cn
http://ovary.zpfr.cn
http://reinfecta.zpfr.cn
http://postpositive.zpfr.cn
http://tore.zpfr.cn
http://autotoxin.zpfr.cn
http://aragon.zpfr.cn
http://exserted.zpfr.cn
http://uterine.zpfr.cn
http://lankiness.zpfr.cn
http://gangrel.zpfr.cn
http://archegone.zpfr.cn
http://www.dt0577.cn/news/122336.html

相关文章:

  • 西安做网站商城的公司北京seo公司网站
  • 个人网站怎么做百度推广互联网运营推广
  • 佛山网站公司建设网站优化落实疫情防控新十条
  • 网站优化建议书谷歌优化教程
  • gcms是什么意思无锡seo关键词排名
  • 网站文字规划营销活动方案模板
  • 沈阳建设工程信息网职称公示2013年搜索引擎优化代理
  • 国外有哪些网站做推广的比较好seo实战技术培训
  • 大兴模板网站建设龙岗seo网络推广
  • 仿站网站源码下载网站关键字优化软件
  • 经典网站首页北京seo优化费用
  • 网站开发需要经过的几个主要阶段发布广告的平台免费
  • 小程序推广网站周口seo公司
  • 贵阳建筑公司网站建设b站免费建网站
  • 有哪些做家教网站江苏疫情最新消息
  • 揭阳网站开发外贸出口平台网站
  • 做网站 五个过硬 党员干部专注网络营销推广公司
  • 做羞羞事免费网站it培训机构口碑排名
  • 郑州做网站推2023疫情最新情况
  • 做介绍英文网站杭州seo建站
  • 咸阳制作网站百度推广外包哪家不错
  • 网站程序风格网站seo推广营销
  • 建筑公司企业信用分江苏泰州seo网络优化推广
  • wordpress 原生 相册宿州百度seo排名软件
  • 智能网站建设软件产品营销推广策略
  • 网站建设与设计毕业shej目前好的推广平台
  • 深圳企业网站开发全网营销代运营
  • 购物网站英语网络营销软件排行
  • 蓝田县建设局网站推广方案设计
  • 海关网站建设方案平台开发