A13433 | Edge Weight Assignment
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
You have unweighted tree of $n$ vertices. You have to assign a positive weight to each edge so that the following condition would hold:
- For every two different leaves $v_{1}$ and $v_{2}$ of this tree, [bitwise XOR](https://en.wikipedia.org/wiki/Bitwise_operation#XOR) of weights of all edges on the simple path between $v_{1}$ and $v_{2}$ has to be equal to $0$ .
Note that you can put very large positive integers (like $10^{(10^{10})}$ ).
It's guaranteed that such assignment always exists under given constraints. Now let's define $f$ as the number of distinct weights in assignment.
 In this example, assignment is valid, because bitwise XOR of all edge weights between every pair of leaves is $0$ . $f$ value is $2$ here, because there are $2$ distinct edge weights( $4$ and $5$ ). In this example, assignment is invalid, because bitwise XOR of all edge weights between vertex $1$ and vertex $6$ ( $3, 4, 5, 4$ ) is not $0$ .
What are the minimum and the maximum possible values of $f$ for the given tree? Find and print both.
- For every two different leaves $v_{1}$ and $v_{2}$ of this tree, [bitwise XOR](https://en.wikipedia.org/wiki/Bitwise_operation#XOR) of weights of all edges on the simple path between $v_{1}$ and $v_{2}$ has to be equal to $0$ .
Note that you can put very large positive integers (like $10^{(10^{10})}$ ).
It's guaranteed that such assignment always exists under given constraints. Now let's define $f$ as the number of distinct weights in assignment.
 In this example, assignment is valid, because bitwise XOR of all edge weights between every pair of leaves is $0$ . $f$ value is $2$ here, because there are $2$ distinct edge weights( $4$ and $5$ ). In this example, assignment is invalid, because bitwise XOR of all edge weights between vertex $1$ and vertex $6$ ( $3, 4, 5, 4$ ) is not $0$ .
What are the minimum and the maximum possible values of $f$ for the given tree? Find and print both.
输入格式
The first line contains integer $n$ ( $3 \le n \le 10^{5}$ ) — the number of vertices in given tree.
The $i$ -th of the next $n-1$ lines contains two integers $a_{i}$ and $b_{i}$ ( $1 \le a_{i} \lt b_{i} \le n$ ) — it means there is an edge between $a_{i}$ and $b_{i}$ . It is guaranteed that given graph forms tree of $n$ vertices.
The $i$ -th of the next $n-1$ lines contains two integers $a_{i}$ and $b_{i}$ ( $1 \le a_{i} \lt b_{i} \le n$ ) — it means there is an edge between $a_{i}$ and $b_{i}$ . It is guaranteed that given graph forms tree of $n$ vertices.
输出格式
Print two integers — the minimum and maximum possible value of $f$ can be made from valid assignment of given tree. Note that it's always possible to make an assignment under given constraints.
输入输出样例
输入 #1
6 1 3 2 3 3 4 4 5 5 6
输出 #1
1 4
输入 #2
6 1 3 2 3 3 4 4 5 4 6
输出 #2
3 3
输入 #3
7 1 2 2 7 3 4 4 7 5 6 6 7
输出 #3
1 6
In the first example, possible assignments for each minimum and maximum are described in picture below. Of course, there are multiple possible assignments for each minimum and maximum.
In the second example, possible assignments for each minimum and maximum are described in picture below. The $f$ value of valid assignment of this tree is always $3$ .
In the third example, possible assignments for each minimum and maximum are described in picture below. Of course, there are multiple possible assignments for each minimum and maximum.

In the second example, possible assignments for each minimum and maximum are described in picture below. The $f$ value of valid assignment of this tree is always $3$ .
In the third example, possible assignments for each minimum and maximum are described in picture below. Of course, there are multiple possible assignments for each minimum and maximum.

C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted