各州の人口のリストが与えられた場合、州が選挙区で取得する票の数の多い順に出力します。
入力:最初の数値は、配布する投票の総数を表します。次に、リストと母集団が続きます。この例では、州の省略形が使用されていますが、大文字と小文字を含む任意の名前を使用できます。含まれている情報が州の略称とその人口のみである限り、これは任意の形式で取得できます。
入力は、関数の引数として、または任意の方法で取得できます。
(可能な)入力例: 538 [[CA 38000000], [NH 1300000] etc.]
出力:各州の得票数をある形式で出力します。状態を最大から最小に並べます。2つの州の投票数が同じである場合は、辞書で最初に来る名前(アルファベット順で最初に来る名前)の順に並べます。
投票数を見つける前に、最初に入力のリストにDCという名前の州があるかどうかを確認し、ある場合はその人口に関係なく、州に3票を与えます。次に、それをリストから削除し、DCが存在しないかのように残りの投票を割り当てます。
選挙人団の投票数は、上院議員と議員の数の合計と定義されています。すべての州には2人の上院議員がいるため、合計から州の数の2倍(入力例では538)を引いて、代表の数を取得します。開始するすべての州に1人の代表者を割り当てます。次に、次のプロセスを実行します。
が人口である
Aとして定義された番号を各州に割り当てます。P/sqrt(2)Pの値に従って状態を並べ替えます
A。最初の状態(最大の状態
A)にもう1人の代表を割り当てます。再割り当ての値
Aとして、A = P/(sqrt(n)*sqrt(n + 1))ここで、n状態に割り当てられた代表者の現在の数です。手順2に戻ります。すべての担当者がなくなるまで繰り返します。
(可能な)出力例:{CA: 518, NH: 20}。出力はこの形式である必要はありませんが、同じ情報が含まれている必要があります。
投票数が少ないために合法的に投票を割り当てることができない場合は3*(# of states)、好きなものを印刷してください。クラッシュしたり、エラーをスローしたりできます。
テストケース:
538 [['CA' 38000000], ['NH' 1300000]] --> CA: 518, NH: 20
538 [['NH' 1300000], ['CA' 38000000]] --> CA: 518, NH: 20 (must be in order from greatest to least!)
538 [['DC' 1000000], ['RH' 1]] --> RH: 535, DC: 3
100 [['A', 12], ['B', 8], ['C', 3]] --> A: 51, B: 35, C: 14
100 [['A', 12], ['B', 8], ['C', 3], ['D', 0]]: --> [49, 34, 14, 3] (yes, even states with no population get votes)
2 [['A', 1]] --> aasdfksjd;gjhkasldfj2fkdhgas (possible output)
12 [['A', 1], ['B', 2], ['C', 3], ['D', 4]] --> A: 3, B: 3, C: 3, D: 3
42 [['K', 123], ['L', 456], ['M', 789]] --> M: 23, L: 14, K: 5
420 [['K', 123], ['L', 456], ['M', 789]] --> M: 241, L: 140, K: 39
135 [['C', 236841], ['D', 55540], ['G', 70835], ['K', 68705], ['M', 278514], ['Ms', 475327], ['Nh', 141822], ['Nj', 179570], ['Ny', 331589], ['Nc', 353523], ['P', 432879], ['R', 68446], ['Sc', 206236], ['Ve', 85533], ['Vi', 630560]] --> Vi: 20, Ms: 16, P: 14, Nc: 12, Ny: 12, M: 10, C: 9, Sc: 8, Nj: 7, Nh: 6, Ve: 5, D: 4, G: 4, K: 4, R: 4
A、としてA = P/(sqrt(n)*sqrt(n + 1))、ここでn、状態に割り当てられているメンバーの現在の数です。」「の再割り当て値に変更しなければならないAように、A = P/(sqrt(n)*sqrt(n + 1))ここで、n現在の数であり、代表状態に割り当てられているが、」。それは私を失望させた。