जवाबों:
आज्ञा देना सबसेट का उदाहरण है, जहां एल संख्याओं की एक सूची (मल्टीसेट) है, और बी लक्ष्य राशि है। चलो एस = Σ एल । चलो एल ' जोड़कर गठन सूची हो एस + बी , 2 एस - बी करने के लिए एल ।
(1) यदि वहाँ एक sublist है योग के लिए बी , तो L ' दो बराबर भागों में विभाजित किया जा सकता: एम ∪ { 2 एस - बी } और एल ∖ एम ∪ { एस + बी } । दरअसल, पहला भाग B + ( 2 S - B ) = 2 S और दूसरा ( S - B ) + ( S + B) ।
(2) यदि को दो समान भागों P 1 , P 2 में विभाजित किया जा सकता है , तो L योग से B तक का सबलिस्ट है । दरअसल, चूंकि ( S + B ) + ( 2 S - B ) = 3 S और प्रत्येक भाग 2 S के लिए है , दोनों तत्व अलग-अलग हिस्सों से संबंधित हैं। व्यापकता के नुकसान के बिना, 2 एस - बी ∈ पी 1 । P 1 में बाकी तत्व हैं और B को योग।
@Yuval Filmus द्वारा उल्लिखित उत्तर गलत है (यह केवल सही है यदि कोई नकारात्मक पूर्णांक नहीं हैं)। निम्नलिखित मल्टीसेट पर विचार करें:
और लक्ष्य राशि है । हम जानते हैं कि कोई सबसेट नहीं है। अब, हम विभाजन समस्या के लिए उदाहरण का निर्माण करते हैं। दो नए जोड़े गए तत्व हैं 2 σ - टी = 12 और σ + टी = 3 । मल्टीसेट अब है: { - 5 , 2 , 2 , 2 , 2 , 2 , 3 , 12 } और कुल योग 20 है ।
सबसेट सम:
इनपुट: {a1, a2, ..., am} st M = {1..m} और ai गैर नकारात्मक पूर्णांक हैं और S, {1..k} और Σai (i∈S) = t
विभाजन:
इनपुट: {a1, a2, ..., am} और S 1 {1, · · ·, m} st ∈ai (iΣS) = (aj (j∉S)
विभाजन एनपी सबूत: यदि प्रोवर सत्यापनकर्ता के लिए एक विभाजन (पी 1, पी 2) प्रदान करता है, तो सत्यापनकर्ता आसानी से पी 1 और पी 2 की राशि की गणना कर सकता है और जांच सकता है कि परिणाम रैखिक समय में 0 है।
NP_Hard: सबसेटसम Hp पार्टीशन
आज्ञा देना x इनपुट के सबसेटसम और x =, a1, a2, ..., am, t〉 और 1ai (मैं 1 से m) = a
Case1: 2t> = a:
F (x) = 〈a1, a2, ..., am, am + 1 am जहां am + 1 = 2x) a
हम यह दिखाना चाहते हैं कि x∈SubsetSum x f (x) ∈PARTITION
इसलिए वहाँ मौजूद S T {1, ..., m} st T = {1..m} - S और Σai (i atT) =
और Let T '= {1 ... m, m + 1} - S so Σaj (j'T') = a-t + 2t-a = t
जो वास्तव में isai (i∈S) = t है और यह f (x) ΣPARTITION दिखाता है
अब हम यह भी दिखाएंगे कि f (x) IONPARTITION ∈ xubSubsetSum
इसलिए वहाँ मौजूद S there {1, ..., m, m + 1} st T = {1, ..., m, m + 1} - S और --ai (i∈T) = [a + (2t-a) ) आयकर] = टी
और यह itai (i∈T) = ∈aj (j )S) को दर्शाता है, इसलिए m + 1∈T और S · {1, · ·, m} और Σai (i∈S) = t
तो x soSubsetSum
केस 2: 2t = <a :
हम एक ही जाँच कर सकते हैं लेकिन इस समय am + 1 − 2t है
इस लिंक में दोनों कटौती, विभाजन के लिए उप-योग और उप-योग से विभाजन का अच्छा विवरण है। मुझे लगता है कि यह YUVAL के उत्तर से अधिक स्पष्ट है । उपयोगी लिंक