समकक्षों की एक मजेदार जोड़ी 1 + 5 = 2 · 3 और 1 · 5 = 2 + 3 है । ऐसे कई हैं, एक और एक है 1 + 1 + 8 = 1 · 2 · 5 और 1 · 1 · 8 = 1 + 2 + 5 । के सामान्य एक उत्पाद में n धनात्मक पूर्णांक की राशि के बराबर होती है n धनात्मक पूर्णांक, और इसके विपरीत।
इस चुनौती में आपको क्रमपरिवर्तन को छोड़कर इनपुट n> 1 के लिए सकारात्मक पूर्णांक के ऐसे सभी संयोजनों को उत्पन्न करना होगा । आप किसी भी उचित प्रारूप में इनका उत्पादन कर सकते हैं। उदाहरण के लिए, n = 3 के लिए सभी संभव उपाय हैं:
(2, 2, 2) (1, 1, 6)
(1, 2, 3) (1, 2, 3)
(1, 3, 3) (1, 1, 7)
(1, 2, 5) (1, 1, 8)
वह प्रोग्राम जो मेरे 2GB रैम , 64-बिट इंटेल उबंटू लैपटॉप जीत पर एक मिनट में सबसे अधिक एन के लिए सबसे अधिक संयोजन उत्पन्न कर सकता है । यदि आपका उत्तर 2GB से अधिक RAM का उपयोग करता है या किसी ऐसी भाषा में लिखा है जिसे मैं स्वतंत्र रूप से उपलब्ध सॉफ़्टवेयर के साथ परीक्षण नहीं कर सकता, तो मैं आपका उत्तर नहीं दूंगा। मैं अब से दो सप्ताह के समय में उत्तरों का परीक्षण करूंगा और विजेता चुनूंगा। बाद में गैर-प्रतिस्पर्धात्मक उत्तर अभी भी निश्चित रूप से पोस्ट किए जा सकते हैं।
चूंकि यह ज्ञात नहीं है कि सभी n के लिए समाधानों का पूरा सेट क्या है , इसलिए आपको ऐसे उत्तर पोस्ट करने की अनुमति है जो अपूर्ण समाधान उत्पन्न करते हैं। हालाँकि यदि कोई अन्य उत्तर एक (अधिक) पूर्ण समाधान उत्पन्न करता है, भले ही उनका अधिकतम n छोटा हो , वह उत्तर जीत जाता है।
स्पष्ट करने के लिए, यहाँ विजेता को तय करने की स्कोरिंग प्रक्रिया है:
मैं आपके प्रोग्राम को n = 2, n = 3, आदि के साथ टेस्ट करूंगा ... मैं आपके सभी आउटपुट को स्टोर करता हूं और जब आपका प्रोग्राम एक मिनट या 2GB से अधिक रैम का हो जाता है तो रुक जाता हूं। हर बार जब प्रोग्राम किसी दिए गए इनपुट n के लिए चलाया जाता है, तो इसे 1 मिनट से अधिक समय लगने पर समाप्त कर दिया जाएगा।
मैं n = 2 के लिए सभी कार्यक्रमों के लिए सभी परिणामों को देखता हूं। यदि एक प्रोग्राम दूसरे की तुलना में कम वैध समाधान का उत्पादन करता है, तो वह प्रोग्राम समाप्त हो जाता है।
N = 3, n = 4, आदि के लिए चरण 2 को दोहराएं ... अंतिम प्रोग्राम स्थायी जीतता है।