हमने पहले ही यहां एक तह संख्या परिभाषित की है ।
लेकिन अब हम एक सुपर फोल्डिंग नंबर को परिभाषित करने जा रहे हैं। एक सुपर फोल्डिंग संख्या एक संख्या है जिसे यदि पर्याप्त बार मोड़ दिया जाए तो अंततः यह दो की शक्ति से एक कम तक पहुंच जाएगी। फोल्डिंग की विधि, फोल्डिंग नंबर प्रश्न की तुलना में थोड़ी अलग है।
तह एल्गोरिथ्म निम्नानुसार है:
बाइनरी प्रतिनिधित्व ले लो
जैसे 5882
1011011111010
इसे तीन भागों में विभाजित किया। प्रथम आधा, अंतिम आधा और मध्य अंक (यदि इसमें अंकों की विषम संख्या है)
101101 1 111010
यदि मध्य अंक शून्य है तो इस संख्या को मोड़ा नहीं जा सकता है
दूसरे हाफ को उलट दें और पहले हाफ में सुपरइम्पोज हो जाएं
010111 101101
अंकों को जगह में जोड़ें
111212
- Iff परिणाम संख्या को फोल्ड नहीं किया जा सकता है, अन्यथा नया नंबर फोल्डिंग एल्गोरिदम का परिणाम है।
एक संख्या एक सुपर तह संख्या है, अगर इसे लोगों के निरंतर स्ट्रिंग में मोड़ा जा सकता है। (सभी फोल्डिंग नंबर सुपर फोल्डिंग नंबर भी हैं)
आपका कार्य कोड लिखना है जो एक संख्या में लेता है और एक सत्य मान का उत्पादन करता है यदि संख्या सुपर तह संख्या है और मिथ्या अन्यथा। आप अपने कार्यक्रम के आकार पर बनाए जाएंगे।
उदाहरण
5200
बाइनरी में कनवर्ट करें:
1010001010000
आधे में विभाजित करें:
101000 1 010000
मध्य एक है, इसलिए हम सुपरवेज़ को जारी रखते हैं:
000010
101000
उन्हें जोड़ा गया:
101010
कोई ट्वोस नहीं है इसलिए हम आधे में विभाजन जारी रखते हैं:
101 010
तह:
010
101
111
परिणाम 111
(7 दशमलव में) तो यह एक सुपर तह संख्या है।
परीक्षण के मामलों
पहले 100 सुपर तह संख्या हैं:
[1, 2, 3, 6, 7, 8, 10, 12, 15, 20, 22, 28, 31, 34, 38, 42, 48, 52, 56, 63, 74, 78, 90, 104, 108, 120, 127, 128, 130, 132, 142, 150, 160, 170, 178, 192, 204, 212, 232, 240, 255, 272, 274, 276, 286, 310, 336, 346, 370, 400, 412, 436, 472, 496, 511, 516, 518, 524, 542, 558, 580, 598, 614, 640, 642, 648, 666, 682, 704, 722, 738, 772, 796, 812, 852, 868, 896, 920, 936, 976, 992, 1023, 1060, 1062, 1068, 1086, 1134, 1188, 1206, 1254, 1312, 1314, 1320, 1338, 1386, 1440, 1458, 1506, 1572, 1596]
3
परीक्षण के मामलों में फिर से कैसे घुस गया? मैं यह नहीं देख सकता कि इसे कैसे मोड़ा जा सकता है, क्योंकि यह फूट जाता है1 1
, तुरंत एक दे देता है2
। या आप कह रहे हैं कि इसे शून्य गुना मोड़ना भी मायने रखता है?