हम को की अलग-अलग शक्तियों की सूची के रूप में परिभाषित करते हैं जो कि बराबर है । उदाहरण के लिए, ।x V ( 35 ) = [ 32 , 2 , 1 ]
अधिवेशन के द्वारा, शक्तियों को उच्चतम से निम्नतम स्तर पर क्रमबद्ध किया जाता है। लेकिन यह चुनौती के तर्क को प्रभावित नहीं करता है, न ही अपेक्षित समाधानों को।
कार्य
एक सेमिप्रिम को देखते हुए , प्रत्येक पद को V (N) में 2 की शक्तियों की एक और सूची के साथ बदलें, जो इस पद के लिए है, इस तरह से कि सभी परिणामी उप-सूचियों का मिलन मैट्रिक्स M के एक सटीक आवरण के रूप में परिभाषित किया गया है:वी ( एन ) 2 एम
जहां और Q N के मुख्य कारक हैं ।
यह कुछ उदाहरणों के साथ समझना बहुत आसान है।
उदाहरण 1
के लिए , हमने:
- और
- और
को सटीक आवरण में बदलने के लिए , हम को और को में विभाजित कर सकते हैं , जबकि को अपरिवर्तित छोड़ दिया जाता है। तो एक संभावित उत्पादन है:M 16 8 + 4 + 4 4 2 + 2 1
एक और वैध उत्पादन है:
उदाहरण # 2
के लिए , हमने:
- और
- और
एक संभावित उत्पादन है:
नियम
- चूँकि फैक्टरिंग चुनौती का मुख्य हिस्सा नहीं है, आप वैकल्पिक रूप से और को इनपुट के रूप में ले सकते हैं ।पी क्यू
- जब कई संभावित समाधान मौजूद होते हैं, तो आप या तो उनमें से सिर्फ एक को वापस कर सकते हैं या सभी को।
- आप वैकल्पिक रूप से शक्तियों के घातांक लौटा सकते हैं (जैसे बजाय ।
- उप-सूचियों का क्रम मायने नहीं रखता है, और न ही प्रत्येक उप-सूची में शर्तों का क्रम है।
- कुछ अर्धविरामों के लिए, आपको किसी भी शब्द को विभाजित नहीं करना पड़ेगा क्योंकि पहले से ही का एक पूर्ण कवर है ( A23340 देखें )। लेकिन आप अभी भी इस तरह के रूप (सिंगलटन) सूचियों की एक सूची प्रदान करने के लिए है के लिए ।
- यह कोड-गोल्फ है !
परीक्षण के मामलों
Input | Possible output
-------+-----------------------------------------------------------------------------
9 | [ [ 4, 2, 2 ], [ 1 ] ]
15 | [ [ 8 ], [ 4 ], [ 2 ], [ 1 ] ]
21 | [ [ 8, 4, 4 ], [ 2, 2 ], [ 1 ] ]
51 | [ [ 32 ], [ 16 ], [ 2 ], [ 1 ] ]
129 | [ [ 64, 32, 16, 8, 4, 2, 2 ], [ 1 ] ]
159 | [ [ 64, 32, 32 ], [ 16 ], [ 8 ], [ 4 ], [ 2 ], [ 1 ] ]
161 | [ [ 64, 32, 16, 16 ], [ 8, 8, 4, 4, 4, 2, 2 ], [ 1 ] ]
201 | [ [ 128 ], [ 64 ], [ 4, 2, 2 ], [ 1 ] ]
403 | [ [ 128, 64, 64 ], [ 32, 32, 16, 16, 16, 8, 8 ], [ 8, 4, 4 ], [ 2 ], [ 1 ] ]
851 | [ [ 512 ], [ 128, 64, 64 ], [ 32, 16, 16 ], [ 8, 4, 4 ], [ 2 ], [ 1 ] ]
2307 | [ [ 1024, 512, 512 ], [ 256 ], [ 2 ], [ 1 ] ]