atcoder#MSOLUTIONS2019D. Maximum Sum of Minimum
Maximum Sum of Minimum
配点 : 点
問題文
個の頂点 からなる木 と正の整数 が与えられます。 番目の辺は頂点 と頂点 をつなぐ辺です。
の各頂点に正の整数を書き込んだとき、以下のようにしてスコアを計算します。
- 各辺に、 つの端点に書き込まれた整数のうち小さい方を書き込む。
- 各辺に書き込まれた整数の総和をスコアとする。
の各頂点に を つずつ書き込んだときのスコアの最大値を求め、 それを達成する正の整数の書き込み方を つ構成してください。
に複数回現れる整数があるときは、 その整数はその回数だけ使わなければならないことに注意してください。
制約
- 与えられるグラフは木である
入力
入力は以下の形式で標準入力から与えられる。
出力
次の形式で出力せよ。
はスコアの最大値を表す。 は頂点 に書き込むべき整数を表す。 は の並べ替えでなければならない。
最大のスコアを達成する方法が複数個あるときは、 そのうちのどれを出力してもよい。
5
1 2
2 3
3 4
4 5
1 2 3 4 5
10
1 2 3 4 5
頂点 にそれぞれ を書き込むと、 つの辺にはそれぞれ が書き込まれるので、スコアは になります。
これが最大のスコアです。
5
1 2
1 3
1 4
1 5
3141 59 26 53 59
197
59 26 3141 59 53
は互いに異なるとは限りません。