描述
n个城市之间,有n-1条道路。一辆货车从a城市出发,到b城市。某一段时间内,共有m辆货车出发。
货车不会绕道,走a城市到b城市的最短路径。
问:在m次运输中,n个城市里,城市经过的最多货车次数是多少。
N(2≤N≤50,000)个城市间有N-1条道路,编号从1到N。
输入描述
N(2≤N≤50,000)个城市间有N-1条道路,编号从1到N。
m(1≤m≤100,000)辆货车出发,第i辆从a到b。起点和终点,以及运输中经过的城市,都会记录1次,表明货车经过该城市。
输出描述
输入n和m。
输入n-1条边。
输出m组数据,每组两个整数x,y。
样例输入 1
5 10 3 4 1 5 4 2 5 4 5 4 5 4 3 5 4 3 4 3 1 3 3 5 5 4 1 5 3 4
样例输出 1
9
提示
城市经过的最多货车次数是多少
#include <bits/stdc++.h>
#define maxn 50010
using namespace std;
struct node
{
int u, v, nxt;
} edge[maxn << 1];
int deep[maxn], head[maxn], cnt, lp[maxn][30], p[maxn];
void add(int u, int v)
{
++cnt;
edge[cnt].u = u;
edge[cnt].v = v;
edge[cnt].nxt = head[u];
head[u] = cnt;
}
void df