निम्नलिखित प्रक्रिया पर विचार करें:
कुछ गैर-नकारात्मक पूर्णांक एन लें।
उदा एन =
571
इसे बिना किसी अग्रणी शून्य के बाइनरी में व्यक्त करें। (शून्य ही एकमात्र अपवाद है, बनना
0
।)जैसे
571
=1000111011
बाइनरी मेंइस बाइनरी प्रतिनिधित्व में लोगों के लगातार रन और शून्य को तोड़ें।
जैसे
1000111011
→1
,000
,111
,0
,11
सबसे लंबे से सबसे छोटे तक के क्रम को क्रमबद्ध करें।
जैसे
1
,000
,111
,0
,11
→000
,111
,11
,1
,0
बारी के साथ एक समय में सभी अंकों को अधिलेखित
1
की और0
की, हमेशा के साथ शुरू1
की।जैसे
000
,111
,11
,1
,0
→111
,000
,11
,0
,1
एक नया बाइनरी नंबर प्राप्त करने के लिए परिणाम को संक्षिप्त करें।
जैसे
111
,000
,11
,0
,1
→1110001101
=909
दशमलव में
जब आप इस प्रक्रिया द्वारा निर्मित मूल्यों की साजिश करते हैं तो आपको एक बहुत साफ ग्राफ मिलता है:
और यह स्पष्ट रूप से स्पष्ट है कि मैं मंदिर स्काईलाइन अनुक्रम के परिणामस्वरूप अनुक्रम क्यों कह रहा हूं :
चुनौती
एक प्रोग्राम या फ़ंक्शन लिखें जो एक गैर-नकारात्मक पूर्णांक N और प्रिंट में लेता है या संबंधित मंदिर स्काईलाइन अनुक्रम संख्या देता है। आपका इनपुट और आउटपुट दोनों दशमलव में होना चाहिए।
उदाहरण यदि इनपुट 571
आउटपुट है तो होना चाहिए 909
।
बाइट्स में सबसे छोटा कोड जीतता है।
संदर्भ के लिए, यहां N = 0 से 20 तक के अनुक्रम दिए गए हैं:
0 1
1 1
2 2
3 3
4 6
5 5
6 6
7 7
8 14
9 13
10 10
11 13
12 12
13 13
14 14
15 15
16 30
17 29
18 26
19 25
20 26
.BQ
इसके बजाय उपयोग कर सकते हैंjQ2
, जिसका अर्थ है कि आप8
और पूर्ववर्ती के बीच के स्थान को खो सकते हैं2
।