题面

题解

首先我们需要看懂题目

然后我们需要发现一个结论

只要有一个节点的权值确定,那么整棵树的权值就确定了

就像这样:(图片来源于网络,侵删)

然后我们根据这张图片,可以设\(f[i] = a[i] \cdot \prod_f \mathrm{son}[f]\)

其中\(f\)是\(i\)的祖先,\(\mathrm{son}[f]\)表示\(f\)的子节点的个数,\(a[i]\)表示\(i\)的权值

于是我们可以用显然法证明当\(f[i] = f[j]\)时,\(i\)和\(j\)的权值肯定在一种方案中都不用修改

于是算出最多有多少点的\(f\)值相等

然后你愉快地打了上去,oho了

\(f[]\)会爆long long,于是考虑取对数就可以了

普及公式:\(\log_c a + \log_c b = \log_c (ab)\)

代码

#include<cstdio>
#include<cstring>
#include<cmath>
#include<cctype>
#include<algorithm>
#define RG register
#define file(x) freopen(#x".in", "r", stdin), freopen(#x".out", "w", stdout)
#define clear(x, y) memset(x, y, sizeof(x))inline int read()
{int data = 0, w = 1; char ch = getchar();while(ch != '-' && (!isdigit(ch))) ch = getchar();if(ch == '-') w = -1, ch = getchar();while(isdigit(ch)) data = data * 10 + (ch ^ 48), ch = getchar();return data * w;
}const double eps(1e-8);
const int maxn(500010);
struct edge { int next, to; } e[maxn];
int head[maxn], e_num, n, a[maxn], deg[maxn];
double f[maxn];inline void add_edge(int from, int to)
{e[++e_num] = (edge) {head[from], to};head[from] = e_num;
}void dfs(int x, double s)
{f[x] = s + log(a[x]);for(RG int i = head[x]; i; i = e[i].next)dfs(e[i].to, s + log(deg[x]));
}int main()
{n = read();for(RG int i = 1; i <= n; i++) a[i] = read();for(RG int i = 1, a, b; i < n; i++)a = read(), b = read(), ++deg[a], add_edge(a, b);dfs(1, 0); std::sort(f + 1, f + n + 1); int ans = 1;for(RG int i = 2, cnt = 1; i <= n; i++){if(f[i] - f[i - 1] <= eps) ans = std::max(ans, ++cnt);else cnt = 1;}printf("%d\n", n - ans);return 0;
}

转载于:https://www.cnblogs.com/cj-xxz/p/10394313.html

【HNOI2014】米特运输相关推荐

  1. P3237 [HNOI2014]米特运输

    P3237 [HNOI2014]米特运输 第104道题让我洛谷红名. (^ w ^) 题目描述 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存 ...

  2. 洛谷P3237 [HNOI2014]米特运输 题解

    洛谷P3237 [HNOI2014]米特运输 题解 题目链接:P3237 [HNOI2014]米特运输 题意: 这题面是真的长啊 qwq 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为 ...

  3. BZOJ 3573 [HNOI2014]米特运输

    题目链接:传送门 冗长冗长的题面: 3573:[HNOI2014]米特运输3573: [HNOI2014]米特运输3573:[HNOI2014]米特运输 Description 米特是D星球上一种非常 ...

  4. BZOJ3573:[HNOI2014]米特运输(树形DP)

    Description 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储 存一直是一个大问题.D星上有N个城市,我们将其顺序编号为1到N,1号城市 ...

  5. BZOJ3573: [Hnoi2014]米特运输(树上乱搞)

    Time Limit: 20 Sec  Memory Limit: 128 MB Submit: 1669  Solved: 1031 [Submit][Status][Discuss] Descri ...

  6. [HNOI2014]米特运输

    Description 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存一直是一个大问题.D星上有N个城市,我们将其顺序编号为1到N,1号城市为 ...

  7. 【bzoj3573】[Hnoi2014]米特运输

    题目链接 Description 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存一直是一个大问题. D星上有N个城市,我们将其顺序编号为1到N ...

  8. 洛谷P3237 [HNOI2014]米特运输

    题目描述 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存一直是一个大问题. D星上有N个城市,我们将其顺序编号为1到N,1号城市为首都.这N个 ...

  9. hnoi2014米特运输

    思维题  略水 我们一定要用以偏概全的眼光做这道题... 一根节点说明一切 #include <cstdio> #include <cstring> #include < ...

  10. [HNOI 2014] 米特运输

    [HNOI 2014] 米特运输 题目描述 题目 题目描述 输入格式 输出格式 样例输入 样例输出 提示 解题过程 思路 代码 感想 题目描述 一道树形dp 题目 题目描述 米特是D星球上一种非常神秘 ...

最新文章

  1. tensorflow tuner 调参,示例代码(jupyter notebook 版)
  2. 心得丨程序员们,AI来了,机会来了,危机也来了,我们该咋办?
  3. RHEL6基础之三RHEL官网获取ISO镜像
  4. UA MATH571A 一元线性回归I 模型设定与估计
  5. python链表的创建_python数据结构之链表的实例讲解
  6. 捋一捋js面向对象的继承问题
  7. 把可视化放到年终报告里,到底有多赞?
  8. JAVA虚拟机创建对象
  9. R 学习笔记《十一》 R语言初学者指南--图形工具(续)
  10. 机器学习实战(1)-文本分类
  11. 微信小程序 轮播图展示,图片全屏显示
  12. MFC中Ribbon界面关于按钮禁用
  13. Tomcat控制台中文乱码怎么处理[已解决 绝对好用]
  14. 13电路交换、报文交换、分组交换原理
  15. 我的人生哲学(三十六岁版)
  16. PAT (Basic Level) Practice (中文)1027 打印沙漏 (20 分)(C++)
  17. ios游戏比Android贵,为什么苹果商店充值比安卓的要贵?
  18. vim显示空格和tab符号
  19. 软件工程领域CCF B类会议:SANER介绍(以SANER 2019为例)
  20. JSP设置Excel表格换行_外企大公司的 Excel 表格,都是这样设置隐藏的

热门文章

  1. linux谁使用内存,linux内存不知被谁用了
  2. Python 猜数字游戏
  3. 学javascript看什么书?
  4. 其他转成十进制,十进制转其他进制
  5. JS !(非运算)详解
  6. #{}不自动改参数类型_我是干流动补胎的,想让我的柴油机气泵自动打气,怎么改装。谢谢。...
  7. 修改docx表格_实例29_在Word表格中将上下行相同内容的单元格自动合并
  8. 高斯滤波器是低通还是高通_经典模拟滤波器仍值得研究吗?
  9. 为了在简历上写掌握【Java虚拟机JVM】,做了该篇总结
  10. 梯度下降算法以及线性回归模型