【Luogu3478】【POI2008】STA-Station(动态规划)
来源:互联网 发布:lol双核优化 编辑:程序博客网 时间:2024/05/16 02:31
题面
题目描述
给出一个
题解
考虑直接对于每个点计算一次
时间复杂度
所以,考虑只进行一次
如果已经知道根节点的答案的话
那么,他的儿子节点很容易的可以递推出来:
所以可以
#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include<algorithm>#include<set>#include<map>#include<vector>#include<queue>using namespace std;#define MAX 1200000#define ll long longinline int read(){ int x=0,t=1;char ch=getchar(); while((ch<'0'||ch>'9')&&ch!='-')ch=getchar(); if(ch=='-')t=-1,ch=getchar(); while(ch<='9'&&ch>='0')x=x*10+ch-48,ch=getchar(); return x*t;}struct Line{ int v,next;}e[MAX<<1];int h[MAX],cnt=1;int n;ll dep[MAX],sum[MAX],size[MAX];ll ans[MAX];inline void Add(int u,int v){ e[cnt]=(Line){v,h[u]}; h[u]=cnt++;}void dfs(int u,int ff){ sum[u]=dep[u]=dep[ff]+1;size[u]=1; for(int i=h[u];i;i=e[i].next) { int v=e[i].v; if(v==ff)continue; dfs(v,u); size[u]+=size[v]; sum[u]+=sum[v]; }}void DFS(int u,int ff){ for(int i=h[u];i;i=e[i].next) { int v=e[i].v; if(v==ff)continue; ans[v]=ans[u]+n-2*size[v]; DFS(v,u); }}int main(){ n=read(); for(int i=1;i<n;++i) { int u=read(),v=read(); Add(u,v);Add(v,u); } dfs(1,0); ans[1]=sum[1]; DFS(1,0); int pos=1; for(int i=1;i<=n;++i) if(ans[i]>ans[pos])pos=i; printf("%d\n",pos); return 0;}
阅读全文
0 0
- 【Luogu3478】【POI2008】STA-Station(动态规划)
- 洛谷 P3478 [POI2008]STA-Station(bzoj P1131 [POI2008]STA-Station)
- [POI2008]Sta
- [BZOJ1131][POI2008]Sta(树形dp+维护)
- bzoj 1131: [POI2008]Sta(树形DP)
- [bzoj1131][POI2008]Sta(树上dp)
- [BZOJ1131][POI2008]Sta(树形dp+维护)
- bzoj 1131: [POI2008]Sta(DPS)
- bzoj 1131: [POI2008]Sta
- [BZOJ1131] [POI2008]Sta
- 【POI2008】【BZOJ1131】Sta
- 【BZOJ1131】[POI2008]Sta【TreeDP】
- BZOJ 1131 [POI2008]Sta
- bzoj 1131 [POI2008]Sta
- BZOJ 1131: [POI2008]Sta
- 【bzoj1131】 [POI2008]Sta
- [bzoj1131][POI2008]Sta
- 1131: [POI2008]Sta
- 逆透视变换详解 及 代码实现
- SVN安装部署使用的经验分享
- Java深拷贝与浅拷贝
- import、time与datetime与时间格式转化
- automake中Makefile.am和configure.ac的格式及编译过程
- 【Luogu3478】【POI2008】STA-Station(动态规划)
- 更改eclipse中SVN用户名及密码
- 支持持久化的内存数据库-----Redis
- 利用Kali Linux的Ettercap工具实施DNS欺骗攻击
- C语言数组与函数问题归纳
- GStreamer实现视频本地播放并RTP上传到网络VLC播放
- 每日一练6
- 中小型互联网公司微服务实践-经验和教训
- python 高阶函数