मेरे पास यह होमवर्क असाइनमेंट है जो मुझे लगता है कि मैं हल करने में कामयाब रहा हूं, लेकिन पूरी तरह से सुनिश्चित नहीं हूं क्योंकि मैं अपना समाधान साबित नहीं कर सकता। मैं जो करता हूं उस पर टिप्पणियां चाहता हूं, इसकी शुद्धता और क्या कोई बेहतर समाधान है या नहीं।लोगों के समूहों को व्यवस्थित रूप से व्यवस्थित करना
समस्या निम्नानुसार है: हमारे पास N
लोगों के समूह हैं, जहां समूह i
में g[i]
लोग हैं। हम इन लोगों को S
सीटों की दो पंक्तियों पर रखना चाहते हैं, जैसे कि: प्रत्येक समूह को केवल एक पंक्ति में रखा जा सकता है, एक संगत अनुक्रम में, या यदि समूह में सदस्यों की संख्या भी है, तो हम उन्हें दो में विभाजित कर सकते हैं और उन्हें दो पंक्तियों पर रखें, लेकिन इस शर्त के साथ कि उन्हें एक आयताकार बनाना होगा (इसलिए उनके पास दोनों पंक्तियों पर एक ही सूचकांक होना चाहिए)। S
सीटों की न्यूनतम संख्या क्या है ताकि कोई भी खड़ा न हो?
उदाहरण: समूह 4 11
हैं। न्यूनतम S
11
है। हमने एक पंक्ति में सभी 4
और दूसरी पंक्ति पर 11
डाल दिया। एक और: समूह 6 2
हैं। हमने दो पंक्तियों पर और 0 दोनों पर 6
विभाजित किया। इसलिए 4
सीटें न्यूनतम है।
गणना T = (sum of all groups + 1)/2
:
यह है कि मैं क्या सोच रहा हूँ है। समूह संख्याओं को सरणी में संग्रहीत करें, लेकिन के सभी मानों को x/2
के दो मानों में विभाजित करें। तो 4 5
2 2 5
बन जाता है। अब इस वेक्टर पर subset sum चलाएं, और T
से अधिक या उसके बराबर न्यूनतम मान प्राप्त करें जिसे बनाया जा सकता है। वह मूल्य प्रति पंक्ति सीटों की न्यूनतम संख्या आवश्यक है।
उदाहरण: 4 11 => 2 2 11 => T = (15 + 1)/2 = 8
। न्यूनतम हम 2 2 11
से बना सकते हैं जो >= 8
11
है, इसलिए यह उत्तर है।
ऐसा लगता है कि कम से कम मुझे कोई काउंटर उदाहरण नहीं मिल रहा है। हालांकि मेरे पास सबूत नहीं है। सहजता से, इस एल्गोरिदम द्वारा प्रदान की गई सीटों की संख्या के साथ लोगों को आवश्यक शर्तों के तहत व्यवस्था करना हमेशा संभव होता है।
किसी भी संकेत की सराहना की जाती है।
तो आपको लोगों की संख्या के रूप में कम से कम सीटों की आवश्यकता है, है ना? (अभी तक आपके उदाहरणों में यह होल्डिंग नहीं है) –
@ मार्क इलियट - ऐसा लगता है कि यह हो रहा है। वह कहता है "एस सीटों की दो पंक्तियां ** प्रत्येक ** **। – IVlad
@IVlad: मैंने पढ़ा है "सीटों की न्यूनतम संख्या क्या है ताकि कोई खड़ा न हो?"; यदि किसी भी पंक्ति के मुकाबले कुल सीटों को कम करने की कोशिश की जा रही है, तो खाली सीटों से कोई फर्क नहीं पड़ता है, तो प्रति पंक्ति न्यूनतम सीटें केवल सबसे छोटी विषम संख्या है, और यह एक दिलचस्प समस्या नहीं है। –