atcoder#AGC045E. [AGC045E] Fragile Balls
[AGC045E] Fragile Balls
配点 : 点
問題文
から までの番号の付いた 個の箱があります. また, から までの番号の付いた 個のボールがあります. 現在,ボール は箱 に入っています.
あなたは,以下の操作を行えます.
- 現在ボールが 個以上入っている箱を つ選ぶ. そして,その箱からボールを つ選んで取り出し,別の箱に入れる.
ただし,ボールは非常に壊れやすいため,ボール は合計で 回より多く移動させることはできません. 逆に,ボールが壊れない限り,何度でもボールの移動は行なえます.
あなたの目標は,すべての ()について,ボール が箱 に入っているようにすることです. この目的が達成可能かどうか判定してください. また可能な場合は,目標を達成するのに必要な操作回数の最小値を求めてください.
制約
- 目標とする状態において,どの箱にも つ以上のボールが入っている. つまり,すべての () について, を満たす が存在する.
入力
入力は以下の形式で標準入力から与えられる.
出力
目標が達成不可能な場合は を,達成可能な場合は必要な操作回数の最小値を出力せよ.
3 3
1 2 1
2 1 1
1 3 2
3
以下のように 回の操作を行えば良いです.
- 箱 からボール を取り出し,箱 に入れる.
- 箱 からボール を取り出し,箱 に入れる.
- 箱 からボール を取り出し,箱 に入れる.
2 2
1 2 1
2 1 1
-1
5 5
1 2 1
2 1 1
1 3 2
4 5 1
5 4 1
6
1 1
1 1 1
0