प्रत्येक राज्य की आबादी की सूची को देखते हुए, आउटपुट, सबसे बड़ी से कम से कम, वोटों की संख्या जो राज्य को निर्वाचक मंडल में मिलती है।
इनपुट: पहली संख्या वितरित करने के लिए कुल वोटों का प्रतिनिधित्व करती है; इसके बाद और आबादी की सूची है। इस उदाहरण में, राज्यों के लिए संक्षिप्त शब्दों का उपयोग किया गया है, लेकिन अपरकेस और लोअरकेस अक्षरों वाले किसी भी नाम का उपयोग किया जा सकता है। आप इसे किसी भी प्रारूप में ले सकते हैं जिसे आप पसंद करते हैं, जब तक कि एकमात्र जानकारी निहित है राज्य का संक्षिप्त नाम और इसकी आबादी।
इनपुट को एक फ़ंक्शन के तर्क के रूप में लिया जा सकता है, या किसी भी तरह से आप चाहते हैं।
उदाहरण (संभव) इनपुट: 538 [[CA 38000000], [NH 1300000] etc.]
आउटपुट: आउटपुट, कुछ प्रारूप में, प्रत्येक राज्य को वोटों की संख्या मिलती है। राज्यों को सबसे कम से कम ऑर्डर करें। यदि दो राज्यों में समान संख्या में वोट होते हैं, तो जो भी नाम से आदेश आएगा वह पहले एक शब्दकोश में आएगा (जो वर्णानुक्रम में पहले आता है)।
वोटों की संख्या का पता लगाने से पहले, पहले जांच लें कि इनपुट की सूची में DC नाम का कोई राज्य है या नहीं और अगर है, तो उसकी आबादी की परवाह किए बिना राज्य को 3 वोट दें। फिर, इसे सूची से हटा दें और बाकी वोटों को असाइन करें जैसे कि डीसी मौजूद नहीं था।
निर्वाचक मंडल में मतों की संख्या को सीनेटरों और प्रतिनिधियों की संख्या का योग माना जाता है। प्रत्येक राज्य को दो सीनेटर मिलते हैं, इसलिए प्रतिनिधियों की संख्या प्राप्त करने के लिए कुल (538 उदाहरण इनपुट में) राज्यों की संख्या से दो गुना घटाएं। शुरू करने के लिए हर राज्य को एक प्रतिनिधि सौंपें। फिर, निम्नलिखित प्रक्रिया करें:
प्रत्येक राज्य को एक संख्या प्रदान करें, जहां
Aपरिभाषित किया जाए कि जनसंख्याP/sqrt(2)कहांPहै।राज्यों को उनके मूल्यों के अनुसार क्रमबद्ध करें
A।पहला राज्य (सबसे बड़ा वाला
A) एक और प्रतिनिधि सौंपें ।की पुनः असाइन मूल्यों
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की वर्तमान संख्या कहां है ।"। कि मुझे फेंक दिया।