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

保定市网站建设_网站建设公司_定制开发_seo优化

物流企业网站建设特色,全屋设计装修效果图,简书wordpress主题,南京自助建站软件D - Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths 思路#xff1a; 树上启发式合并 从根节点出发到每个位置的每个字符的奇偶性记为每个位置的状态#xff0c;每次统计一下每个状态的最大深度 为了保证链经过当前节点u#xff0c;我们先计算每个子树的答案…D - Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths 思路 树上启发式合并 从根节点出发到每个位置的每个字符的奇偶性记为每个位置的状态每次统计一下每个状态的最大深度 为了保证链经过当前节点u我们先计算每个子树的答案再更新子树状态对深度的贡献。 代码 #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize(4) #includebits/stdc.h using namespace std; #define y1 y11 #define fi first #define se second #define pi acos(-1.0) #define LL long long #define ls rt1, l, m #define rs rt1|1, m1, r //#define mp make_pair #define pb push_back #define ULL unsigned LL #define pll pairLL, LL #define pli pairLL, int #define pii pairint, int #define piii pairpii, int #define pdi pairdouble, int #define pdd pairdouble, double #define mem(a, b) memset(a, b, sizeof(a)) #define debug(x) cerr #x x \n; #define fio ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); //headinline int read() {int a 1, b 0;char ch getchar();while(ch 0 || ch 9) {if(ch -) a -1;ch getchar();}while(0 ch ch 9) {b b*10 ch-0;ch getchar();}return a*b; } const int N 5e5 5, M 5e6 5; const int INF 1e8; vectorpii g[N]; int n, p, dp[N], sz[N], son[N], deep[N], st[N], mx[M]; char c[2]; void get_son(int u, int o) {sz[u] 1;deep[u] deep[o] 1;for (int i 0; i g[u].size(); i) {int v g[u][i].fi;int w g[u][i].se;st[v] st[u] ^ (1w);get_son(v, u);if(sz[v] sz[son[u]]) son[u] v;sz[u] sz[v];} } void CAL(int p, int u) {if(mx[st[u]] 0) dp[p] max(dp[p], mx[st[u]]deep[u]-2*deep[p]);for (int i 0; i 22; i) {if(mx[st[u]^(1i)] 0) dp[p] max(dp[p], mx[st[u]^(1i)] deep[u]-2*deep[p]);}for (int i 0; i g[u].size(); i) {int v g[u][i].fi;CAL(p, v);} } void ADD(int u) {mx[st[u]] max(mx[st[u]], deep[u]);for (int i 0; i g[u].size(); i) {int v g[u][i].fi;ADD(v);} } void DELETE(int u) {if(mx[st[u]] 0) mx[st[u]] -INF;for (int i 0; i g[u].size(); i) {int v g[u][i].fi;DELETE(v);} } void dfs(int u) {for (int i 0; i g[u].size(); i) {int v g[u][i].fi;if(v ! son[u]) {dfs(v);DELETE(v);}}if(son[u]) dfs(son[u]);if(mx[st[u]] 0) dp[u] mx[st[u]] - deep[u];for (int i 0; i 22; i) {if(mx[st[u]^(1i)] 0) dp[u] max(dp[u], mx[st[u]^(1i)] - deep[u]);}mx[st[u]] max(mx[st[u]], deep[u]);for (int i 0; i g[u].size(); i) {int v g[u][i].fi;if(v ! son[u]) {CAL(u, v);ADD(v);}}for (int i 0; i g[u].size(); i) {int v g[u][i].fi;dp[u] max(dp[u], dp[v]);} } int main() {n read();for (int i 2; i n; i) {p read();scanf(%s, c);g[p].pb({i, c[0]-a});}get_son(1, 0);for (int i 0; i M; i) mx[i] -INF;dfs(1);for (int i 1; i n; i) printf(%d%c, dp[i], \n[in]);return 0; }  转载于:https://www.cnblogs.com/widsom/p/10773406.html
http://www.ihoyoo.com/news/61853.html

相关文章:

  • 石家庄网站推广专家免费企业网站源码下载
  • wordpress下载整站源码有没有专业做效果图的网站
  • 网站建设北京公司下拉词排名
  • 黄冈网站建设报价表wordpress聊天
  • 如何做网站的301重定向公司网站彩页怎么做
  • 学会网站制作要多久wordpress侧边浮窗
  • 江苏网站建设网络公司网页设计与网站建设-学用一册通
  • 俄文网站建设南京有制作网站的吗
  • 天津河东网站建设公司wordpress文章页的三大标签
  • 哪些公司做网站开发ui设计的软件
  • 花生壳域名做网站工作管理app
  • 有网址和关键词就能刷网站排名网络模块
  • 备份wordpress网站如何增加网站转化率
  • 郑州网站建设专家仿牌网站优化
  • 做门户网站 cmswordpress国产网校
  • 重庆建设网站哪家专业世界500强企业名单
  • 网页教程网站光辉网络 石家庄网站建设
  • 东莞整合网站建设推广漳州台商投资区建设局网站
  • 城乡和住房建设部网站酒店代理分销平台
  • 山东省城乡与建设厅网站首页wordpress重置query循环
  • 口碑好的五屏网站建设购物网站论文
  • 网站开发外包公司合同范本设计规范网站
  • 电商学习网站城市建设网站aqq
  • wordpress 多站点 多域名徐州百度推广总代理
  • 阿里云做的网站怎么备份点击图片是网站怎么做的
  • 西安市城乡建设网站广东深圳天气预报
  • 请人做网站要南阳seo网站价格
  • 惠州定制网站制作推荐网站建设项目采购公告
  • 做老师好还是网站编辑好2018网站如何做seo
  • 企业黄页顺企网潍坊seo教程