ASCII के साथ रिकैमैन का क्रम बनाएं


12

Recamán का क्रम ( A005132 ) एक गणितीय अनुक्रम है, जिसे इस प्रकार परिभाषित किया गया है:

A(n)={0if n=0A(n1)nif A(n1)n is positive and not already in the sequenceA(n1)+nअन्यथा

एक वैकल्पिक, सरल मौखिक स्पष्टीकरण इस प्रकार है:

घटाना जब तक आप नहीं कर सकते (संख्या नकारात्मक है, या पहले इस्तेमाल किया गया है), जिस स्थिति में जोड़ते हैं।

पहले कुछ शब्द 0,1,3,6,2,7,13,20,12,21,1 1

अब, पहले से ही यह चुनौती है जो आपको nअनुक्रम के वें शब्द को उत्पन्न करने के लिए कहता है । यह थोड़ा अलग है।

चुनौती

संख्या को देखते हुए n, nअनुक्रम के पहले शब्दों को ड्रा करें । मुझे 'ड्रा' से क्या मतलब है? मुझे प्रदर्शित करें:

  1. एक संख्या रेखा max([A(y) for y<=n])इकाइयों को लंबा खींचना । हम मान लेंगे n5, अभी के लिए, इसलिए संख्या रेखा 6 इकाइयाँ लंबी है (चूंकि (1)=0 की बड़ी संख्या = 0 , (2)=1 , (3)=3 , (4)=6 और (5)=2 है 6 )। अंडरस्कोर से लाइन बनाएं, 0 से शुरू:

______

  1. पहले और दूसरे शब्दों के बीच संक्रमण के साथ शुरू करें: अर्थात्, 0 और 1. एक वर्ग (समान लंबाई और ऊंचाई) का उपयोग करें |और -आगे की ओर आकर्षित करें । इस स्थिति में, हमें यह याद रखना होगा क्योंकि दूरी केवल 1 है।-
||
______
  1. अब, हम लाइन के नीचे अगले चरण ( (2)=1 से (3)=3 ) पर ड्रा करेंगे (हम हर बार ऊपर और नीचे वैकल्पिक होते हैं):
||
______
 | |
 |-|

जैसा कि आप देख सकते हैं, इस लाइन की ऊंचाई भी 2 है, क्योंकि ऊंचाई दोनों शब्दों के बीच की दूरी के बराबर होनी चाहिए।

यदि हम जारी रखते हैं, तो हम अंततः प्राप्त करेंगे:

   |--|
   |  |
|| |  |
______
 |||  |
 |||  |
  |   |
  |---|

नियम

  • यदि वहाँ एक है -और |टकराने, बाद में एक प्राथमिकता लेता है।
  • छवि के पहले / बाद में स्थान / अनुगामी स्थान हो सकते हैं , लेकिन अनुगमन / पूर्ववर्ती _s या -s की अनुमति नहीं है (अपवाद 0- या 1- अनुक्रमण है)
  • आप _संख्या रेखा पर पहले या इसके ठीक बाद 0 बिंदु सेट करना चुन सकते हैं ।
  • के लिए कोई वैकल्पिक वर्ण -, |या _उपयोग नहीं किया जा सकता है।
  • यह , इसलिए बाइट्स जीत में सबसे छोटा जवाब है।

परीक्षण का मामला

यहाँ एक और परीक्षण मामला है n=10

            |-------|
            ||-----||
            ||     ||
  |----|    ||     ||
  |    |    ||     ||
  ||--||    ||     ||
  ||  ||    ||     ||
||||  ||    ||     ||
_____________________
 |||  ||   |||     ||
 |||  ||   |||     ||
  |   ||   |||     ||
  |---||   |||     ||
       |   |||     ||
       |---|||     ||
           ||------||
           |--------|

यह स्पष्ट नहीं है कि वर्ग के बाएं किनारे को कहां रखा जाना चाहिए।
डेनियल टुटुबलिन

@DaniilTutubalin मुझे यकीन नहीं है कि मैं समझ सकता हूं कि आपका क्या मतलब है।
गीज़ा केरेसेनई

मूल रूप से, कथन केवल यह निर्दिष्ट करता है कि हमें वर्गों (चौड़ाई = ऊंचाई) को खींचने की आवश्यकता है और उन्हें ऊपर और नीचे के बीच वैकल्पिक होना चाहिए। वर्गों के आकार और स्थिति के बारे में कोई निर्देश नहीं हैं। परीक्षण के मामले में मैं देखता हूं कि 2 वर्गों में बाएं किनारे की समान स्थिति हो सकती है।
डेनियल तूतुबलिन

मुझे लगता है As you can see, this line also has a height of 2, since the height must be equal to the distance between the two terms., साथ ही साथ You can choose to set the 0 point just before the first _ on the number line, or just after it.यह बहुत अच्छी तरह से लपेटता है।
गीज़ा केरेसेनई

मुझे लगता है कि 13 => 20 के बाद से n = 10 के लिए परीक्षण का मामला गलत है।
निक केनेडी

जवाबों:


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.