लिंडन शब्द कारक


11

पृष्ठभूमि

एक लिंडन शब्द एक गैर खाली स्ट्रिंग जो सख्ती से अपने सभी अन्य रोटेशन से कोषगत छोटा होता है है। किसी भी तार को विशिष्ट रूप से कारक बनाना संभव है क्योंकि लिंडन शब्दों का संघटन ऐसा है कि ये उप-शब्द शाब्दिक रूप से गैर-बढ़ते हैं; आपकी चुनौती यह है कि जितना संभव हो सके उतने समय ऐसा करें।

विवरण

आपको किसी फ़ंक्शन या प्रोग्राम को लागू करना चाहिए जो किसी भी मुद्रण योग्य ASCII स्ट्रिंग के लिंडन शब्द फैक्टराइजेशन को लागू करता है, क्रम में, परिणामस्वरूप सब्सट्रेटिंग को किसी प्रकार की एक सरणी या स्ट्रीम के रूप में आउटपुट करता है। वर्णों की उनके कोड बिंदुओं से तुलना की जानी चाहिए, और सभी मानक इनपुट और आउटपुट विधियों की अनुमति है। लिए हमेशा की तरह , बाइट्स में सबसे छोटा कार्यक्रम जीतता है।

परीक्षण के मामलों

''           []
'C'          ['C']
'aaaaa'      ['a', 'a', 'a', 'a', 'a']
'K| '        ['K|', ' ']
'abaca'      ['abac', 'a']
'9_-$'       ['9_', '-', '$']
'P&O(;'      ['P', '&O(;']
'xhya{Wd$'   ['x', 'hy', 'a{', 'Wd', '$']
'j`M?LO!!Y'  ['j', '`', 'M', '?LO', '!!Y']
'!9!TZ'      ['!9!TZ']
'vMMe'       ['v', 'MMe']
'b5A9A9<5{0' ['b', '5A9A9<5{', '0']


ध्यान दें कि यह <=नेस द्वारा विभाजित करने के बराबर है । (मुझे नहीं पता कि इसे बेहतर तरीके से कैसे व्यक्त किया जाए
कैलक्यूलेटरफल

क्या यह बार-बार पहले वर्ण और उससे बड़े सभी वर्णों के उपसर्ग लेने के बराबर है?
xnor

@xnor No. 'abac' एक लिंडन शब्द है।
user1502040

@ user1502040 मैं देखता हूं, संबंध दिलचस्प हैं। मैं कुछ परीक्षण मामलों को जोड़ने का सुझाव दूंगा जो इसे पकड़ते हैं।
xnor

जवाबों:


5

पायथ, 17 16 बाइट्स

-1 बाइट isaacg के लिए धन्यवाद!

hf!ff>Y>YZUYT+./

इसे ऑनलाइन आज़माएं!

व्याख्या

hf!ff>Y>YZUYT+./
              ./    Take all possible disjoint substring sets of [the input]
             +      plus [the input] itself (for the null string case).
 f                  Filter for only those sets which
  !f        T       for none of the substrings
    f  >YZUY        is there a suffix of the substring
     >Y             lexographically smaller than the substring itself.
h                   Return the first (i.e. the shortest) such set of substrings.

1
hf!ff>Y>YZUYT+./1 कम बाइट के साथ खाली स्ट्रिंग मामले के लिए खाते।
इसहाक

अच्छा धन्यवाद! मुझे लगा जैसे कोई छोटा रास्ता रहा होगा।
नॉटजगन


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