BZOJ3573:[HNOI2014]米特运输(树形DP)
Description
Input
Output
输出文件仅包含一行,一个整数,表示最少的被重建(即修改储存器容量)的米特储存器的数目。
Sample Input
5
4
3
2
1
1 2
1 3
2 4
2 5
Sample Output
【样例解释】
一个最优解是将A[1]改成8,A[3]改成4,A[5]改成2。
这样,2和3运给1的量相等,4和5运给2的量相等,且每天晚上六点的时候,1,2满,3,4,5空,满足所有限制条件。
Solution
Code
1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<algorithm> 5 #define N (500009) 6 using namespace std; 7 8 struct Edge{int to,next;}edge[N<<1]; 9 int n,u,v,cnt,ans=1,Ind[N],a[N]; 10 int head[N],num_edge; 11 double f[N]; 12 13 void add(int u,int v) 14 { 15 edge[++num_edge].to=v; 16 edge[num_edge].next=head[u]; 17 head[u]=num_edge; 18 } 19 20 void Dfs(int x,int fa) 21 { 22 for (int i=head[x]; i; i=edge[i].next) 23 if (edge[i].to!=fa) 24 f[edge[i].to]=f[x]+log(1.0*Ind[x]), Dfs(edge[i].to,x); 25 } 26 27 int main() 28 { 29 scanf("%d",&n); 30 for (int i=1; i<=n; ++i) 31 scanf("%d",&a[i]); 32 for (int i=1; i<=n-1; ++i) 33 { 34 scanf("%d%d",&u,&v); 35 add(u,v); add(v,u); ++Ind[u]; ++Ind[v]; 36 } 37 for (int i=2; i<=n; ++i) --Ind[i]; 38 Dfs(1,0); 39 for (int i=1; i<=n; ++i) f[i]+=log(1.0*a[i]); 40 41 sort(f+1,f+n+1); 42 for (int i=1; i<=n; ++i) 43 if (f[i]-f[i-1]>1e-8) cnt=1; 44 else ++cnt,ans=max(ans,cnt); 45 printf("%d\n",n-ans); 46 }
转载于:https://www.cnblogs.com/refun/p/9697755.html
BZOJ3573:[HNOI2014]米特运输(树形DP)相关推荐
- BZOJ3573: [Hnoi2014]米特运输(树上乱搞)
Time Limit: 20 Sec Memory Limit: 128 MB Submit: 1669 Solved: 1031 [Submit][Status][Discuss] Descri ...
- 洛谷P3237 [HNOI2014]米特运输 题解
洛谷P3237 [HNOI2014]米特运输 题解 题目链接:P3237 [HNOI2014]米特运输 题意: 这题面是真的长啊 qwq 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为 ...
- P3237 [HNOI2014]米特运输
P3237 [HNOI2014]米特运输 第104道题让我洛谷红名. (^ w ^) 题目描述 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存 ...
- BZOJ 3573 [HNOI2014]米特运输
题目链接:传送门 冗长冗长的题面: 3573:[HNOI2014]米特运输3573: [HNOI2014]米特运输3573:[HNOI2014]米特运输 Description 米特是D星球上一种非常 ...
- 【bzoj3573】[Hnoi2014]米特运输
题目链接 Description 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存一直是一个大问题. D星上有N个城市,我们将其顺序编号为1到N ...
- [HNOI2014]米特运输
Description 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存一直是一个大问题.D星上有N个城市,我们将其顺序编号为1到N,1号城市为 ...
- 洛谷P3237 [HNOI2014]米特运输
题目描述 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存一直是一个大问题. D星上有N个城市,我们将其顺序编号为1到N,1号城市为首都.这N个 ...
- hnoi2014米特运输
思维题 略水 我们一定要用以偏概全的眼光做这道题... 一根节点说明一切 #include <cstdio> #include <cstring> #include < ...
- bzoj3573米特运输
题意: 给定一棵树上的边和点权 改动点权使得每个父节点u容量为子节点容量的d[u](子节点个数)倍 考察点: 1.这是一道语文题 2.点权很大 直接算会爆 有一种优化办法:取log(醉 这是什么优化) ...
最新文章
- PS2019画笔工具、铅笔工具、颜色替换工具
- 静态html页面传递参数,javascript静态页面传值的三种方法分享
- spark从hbase读数据到存入hbase数据两种版本写法
- Notepad++ 设置执行 lua 和 python
- python24点4张扑克_Python实现扑克24点小游戏 ,从此我就没输过
- [PyTorch] 官网教程之神经网络
- 第 4 章 Spring
- python爬虫-Python爬虫入门这一篇就够了
- php实现微信小程序人脸识别登录
- 看Spring实战有感(一)
- java keystore php,KeyStoreSpi
- 绘制奥林匹克五环旗。
- Webbrowser 使用IE 最高版本
- 李小龙私人的超级训练计划
- python matplotlib axes3d.get_test_data() 是什么意思?(获得测试数据)
- Transaction silently rolled back because it has been marked as rollback-only Spring事务嵌套问题
- 发现公布错误是新闻价值所在
- OpenERP 千位分隔符(thousand separator)
- html表白earth,表白的英文句子
- 如何比较优雅地编码?