बिट्स की एक सरणी पर विचार करें, कहते हैं
1 1 1 0 0 0 0 1 0 0 1 0 1 1 1 1 1 0 1 0
अगर हम कम से कम 85% बिट्स समान हैं और पहले / अंतिम बिट्स दोनों बहुमत बिट के बराबर हैं, तो हम एक सन्निहित उप-सीमा को uous 5 एक चरण कहते हैं। इसके अलावा, हम एक चरण को अधिकतम कहते हैं यदि यह किसी अन्य चरण का एक सख्त उपप्रकार नहीं है।
यहाँ उपरोक्त उदाहरण के अधिकतम चरण हैं:
1 1 1 0 0 0 0 1 0 0 1 0 1 1 1 1 1 0 1 0
-------------
-------------
-------------
जैसा कि आप देख सकते हैं, 3अधिकतम चरण हैं। दूसरी ओर, यह
1 1 1 0 0 0 0 1 0 0 1 0 1 1 1 1 1 0 1 0
---------
यह अधिकतम चरण नहीं है क्योंकि यह कम से कम एक अन्य चरण का एक सख्त उपप्रकार है।
चुनौती
इनपुट STDIN, कमांड लाइन या फ़ंक्शन तर्क के माध्यम से bits 5 बिट्स का एक क्रम है। बिट्स एक स्ट्रिंग या एक सरणी के रूप में आ सकते हैं।
आप किसी एकल पूर्णांक, सरणी के लिए अधिकतम चरणों की संख्या को आउटपुट करने के लिए हैं, या तो STDOUT के माध्यम से मुद्रित किया गया है या किसी फ़ंक्शन से लौटाया गया है।
स्कोरिंग
यह कोड-गोल्फ है इसलिए सबसे कम बाइट्स जीत में कार्यक्रम।
परीक्षण के मामलों
0 1 0 1 0 -> 0
0 0 0 0 0 -> 1
0 0 0 0 1 0 1 1 1 1 -> 0
0 0 0 0 0 1 0 1 1 1 1 1 -> 2
1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 -> 1
0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 -> 2
0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 -> 1
0 1 0 1 0 0 1 0 1 0 1 0 0 0 1 1 1 1 0 1 0 0 1 1 0 0 0 1 1 0 -> 0
1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 -> 4
0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1 0 1 0 0 0 0 0 -> 5
यहाँ अंतिम मामले के लिए स्पष्टीकरण दिया गया है:
0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1 0 1 0 0 0 0 0
---------------------------
-------------------------
-----------------
-----------------
-------------
मजेदार तथ्य: यह चुनौती अस्थायी डेटा में परिवर्तन का पता लगाने के लक्ष्य के साथ डेटा माइनिंग समस्या से आई थी।
0होता है और आखिरी में खत्म होता है।
1 1 0 1 185% 5 4.25 है जो इतनी लंबाई 5 असंभव होगा या क्या हमें नीचे 4 को गोल करना चाहिए?