A9520 | Berland Federalization
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
Recently, Berland faces federalization requests more and more often. The proponents propose to divide the country into separate states. Moreover, they demand that there is a state which includes exactly $k$ towns.
Currently, Berland has $n$ towns, some pairs of them are connected by bilateral roads. Berland has only $n-1$ roads. You can reach any city from the capital, that is, the road network forms a tree.
The Ministry of Roads fears that after the reform those roads that will connect the towns of different states will bring a lot of trouble.
Your task is to come up with a plan to divide the country into states such that:
- each state is connected, i.e. for each state it is possible to get from any town to any other using its roads (that is, the roads that connect the state towns),
- there is a state that consisted of exactly $k$ cities,
- the number of roads that connect different states is minimum.
Currently, Berland has $n$ towns, some pairs of them are connected by bilateral roads. Berland has only $n-1$ roads. You can reach any city from the capital, that is, the road network forms a tree.
The Ministry of Roads fears that after the reform those roads that will connect the towns of different states will bring a lot of trouble.
Your task is to come up with a plan to divide the country into states such that:
- each state is connected, i.e. for each state it is possible to get from any town to any other using its roads (that is, the roads that connect the state towns),
- there is a state that consisted of exactly $k$ cities,
- the number of roads that connect different states is minimum.
输入格式
The first line contains integers $n$ , $k$ ( $1<=k<=n<=400$ ). Then follow $n-1$ lines, each of them describes a road in Berland. The roads are given as pairs of integers $x_{i},y_{i}$ ( $1<=x_{i},y_{i}<=n; x_{i}≠y_{i}$ ) — the numbers of towns connected by the road. Assume that the towns are numbered from 1 to $n$ .
输出格式
The the first line print the required minimum number of "problem" roads $t$ . Then print a sequence of $t$ integers — their indices in the found division. The roads are numbered starting from 1 in the order they follow in the input. If there are multiple possible solutions, print any of them.
If the solution shows that there are no "problem" roads at all, print a single integer 0 and either leave the second line empty or do not print it at all.
If the solution shows that there are no "problem" roads at all, print a single integer 0 and either leave the second line empty or do not print it at all.
输入输出样例
输入 #1
5 2 1 2 2 3 3 4 4 5
输出 #1
1 2
输入 #2
5 3 1 2 1 3 1 4 1 5
输出 #2
2 3 4
输入 #3
1 1
输出 #3
0
暂无题解
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted