2023 HUAWEI OD 統一試験ペーパー B [最小資金が最も多くの票を獲得] [選挙活動] Java 実装

目次 

トピック

一連の考え

コード


トピック

あなたは今、ある郡の市長に立候補しています。あなたはすべての有権者に行ってアンケートをとりました。各人が誰に投票するのか、その人に自分を選んでもらうためにどれくらいの費用がかかるのかはすでにわかっています。ここで、あなたは郡判事になるために最小限のお金を費やしたいと考えています。選挙の条件は、他の候補者よりも多くの票を持っていることです (厳密には、他の候補者より多くの票を持っています。ほとんどの候補者と同じではありません)。最低コストを計算してください。

入力

単一のテスト データ セット。
最初の行には、この郡の有権者の数を表す整数 (1≤n≤10^5) が含まれています。
次に n 行があり、各行には 2 つの整数 ai と bi(0≤ai≤10^5;0≤bi≤10^4) があり、これは i 番目の投票者が ai 番目の候補者であることを意味します。バイのお金を自分で使うこと。あなたは候補者 0 です (つまり、有権者があなたに投票した場合、ai は 0 であり、この時点では bi も 0 でなければなりません)。

出力

費やした金額の最小値を表す整数を出力します。

例 1:

入力:

5
1 2
1 2
1 2
2 1
0 0

出力:

3

一連の考え

1: この質問は非常に難しいので、インターネットで解決策をたくさん検索しました

おすすめ

転載: blog.csdn.net/misayaaaaa/article/details/132356639