चुनौती
इस चुनौती के लिए, एक पहाड़ी स्ट्रिंग वह है जो व्याकरण के नियम के अनुरूप है M: x(Mx)*जहां प्रत्येक उत्पादन पर, सभी x समान वर्ण हैं। जब इंडेंट किया जाता है, तो एक पहाड़ी स्ट्रिंग कुछ इस तरह दिख सकती है:
A
B
C
D
C
E
F
E
C
B
A
जैसा कि आप देख सकते हैं, यह पक्ष से एक पहाड़ जैसा दिखता है।
औपचारिक परिभाषा
- कोई भी एक पात्र
aपहाड़ी होता है। - यदि
Sएक पहाड़ी स्ट्रिंग है औरaएक चरित्र है, तोaSaपहाड़ी है, जहां juxtaposition स्ट्रिंग के संघनन का प्रतिनिधित्व करता है। - अगर
aSaऔरaTaपहाड़ी तार हैं, तोaSaTaएक पहाड़ी तार है। ध्यान दें कि यह नियम बताता है कि यह पैटर्न किसी भी संख्या में पुनरावृत्ति के लिए है। (यानीaSaTaUa,aSaTaUaVa,aSaTaUaVaWa... सभी पहाड़ी कर रहे हैं।)
उदाहरण
उदाहरण के लिए, सभी विषम-लंबाई वाले पलिंड्रो पहाड़ हैं:
t
a
c
o
c
a
t
qwertytrasdfdgdsarewqjklkjq एक कम तुच्छ उदाहरण है:
q
w
e
r
t
y
t
r
a
s
d
f
d
g
d
s
a
r
e
w
q
j
k
l
k
j
q
उदाहरण आउटपुट
a ==> true
aaa ==> true
mom ==> true
tacocat ==> true
qwertytrasdfdgdsarewqjklkjq ==> true
wasitacaroraratisaw ==> true
abcbcbcbcba ==> true
aaaaabcbbba ==> true
<empty string> ==> false
aa ==> false
pie ==> false
toohottohoot ==> false
asdfdghgfdsa ==> false
myhovercraftisfullofeels ==> false
नियम
- यह एक निर्णय समस्या है, इसलिए जब तक यह सही, सुसंगत, स्पष्ट नहीं है, और सही समय पर कार्यक्रम समाप्त हो जाता है, तब तक सही या गलत में से कोई भी प्रतिनिधित्व मान्य आउटपुट है। अपने समाधान के साथ अपने उत्पादन सम्मेलन को बताना सुनिश्चित करें।
- यह निर्धारित करने के लिए तुच्छ होना चाहिए कि आउटपुट सही है या गलत, यह जाने बिना कि इनपुट स्ट्रिंग क्या है। ध्यान दें कि इसका मतलब यह नहीं है कि सत्य या मिथ्या आउटपुट स्थिर होना चाहिए, हालांकि "पर्वतीय स्ट्रिंग को प्रिंट करें यदि स्ट्रिंग पहाड़ी है और गैर-पहाड़ी स्ट्रिंग है तो पहाड़ी नहीं" स्पष्ट कारणों के लिए प्रतिबंधित प्रतिबंध है।
- दूसरी ओर, एक सम्मेलन जैसे "झूठ के लिए एक अपवाद फेंकता है और चुपचाप सच के लिए बाहर निकलता है" ठीक होगा, साथ ही "सच के लिए एक एकल चरित्र और झूठे के लिए और कुछ भी कहता है"
- यह कोड गोल्फ है, इसलिए सबसे छोटा कार्यक्रम जीतता है।
- मानक खामियों पर रोक लगाई जाती है।
wasitacaroraratisaw? यह मुझे बहुत अच्छा लगता है
wasitacaroraratisawवास्तव में पहाड़ी AFAICT है
aaaकाम नहीं करते हैं।
aaaअच्छा होगा, जहां एक ही चरित्र को कई स्तरों पर उपयोग करने की आवश्यकता होती है।