परिचय
इस चुनौती में, 2 × 2 मैट्रिक्स को इस तरह अनुक्रमित किया जाता है:
0 1
2 3
हम के एक परिवार को परिभाषित भग्न जैसे पैटर्न F(L)
, जहां L
एक length- है n
इन सूचकांकों की सूची और F(L)
आकार की है ।2n-1 × 2n-1
- यदि
L == []
, तोF(L)
1 × 1 पैटर्न है#
। यदि
L != []
, तोF(L)
निम्नानुसार निर्माण किया जाता है। पहले निकाले गए तत्वP
से प्राप्त पैटर्न होने देंL
। पीरियड्स से भरे हुए आकार के चार ग्रिड लें , और पैटर्न के साथ अनुक्रमित ग्रिड को बदलें । फिर, उनके बीच हैश की एक परत का उपयोग करके ग्रिड को एक साथ गोंद करें। यहां चार मामलों के चित्र दिए गए हैं:2n-1-1 × 2n-1-1
.
L[0]
P
#
L[0]==0 L[0]==1 L[0]==2 L[0]==3 #... ...# ...#... ...#... [P]#... ...#[P] ...#... ...#... #... ...# ...#... ...#... ####### ####### ####### ####### ...#... ...#... #... ...# ...#... ...#... [P]#... ...#[P] ...#... ...#... #... ...#
उदाहरण
इनपुट पर विचार करें L = [2,0]
। हम 1 × 1 ग्रिड से शुरू करते हैं #
, और L
दाईं ओर से चलते हैं। सबसे सही तत्व है 0
, इसलिए हम 1 × 1 ग्रिड की चार प्रतियां लेते हैं .
, पहले एक को प्रतिस्थापित करते हैं #
, और उन्हें हैश के साथ गोंद करते हैं। इसका परिणाम 3 × 3 ग्रिड है
##.
###
.#.
अगला तत्व है 2
, इसलिए हम s की 3 × 3 ग्रिड की चार प्रतियां लेते हैं .
, और तीसरे को उपरोक्त ग्रिड से प्रतिस्थापित करते हैं। चार ग्रिड हैं
... ... ##. ...
... ... ### ...
... ... .#. ...
और #
7 × 7 ग्रिड में परिणाम के साथ उन्हें gluing
...#...
...#...
...#...
#######
##.#...
####...
.#.#...
यह हमारा अंतिम आउटपुट है।
इनपुट
आपका इनपुट L
सूचकांकों की एक सूची है 0, 1, 2, 3
। आप इसे पूर्णांकों की सूची, या अंकों की एक स्ट्रिंग के रूप में ले सकते हैं। ध्यान दें कि यह खाली हो सकता है, और इसमें डुप्लिकेट हो सकते हैं। की लंबाई L
अधिकतम 5 है।
उत्पादन
आपका आउटपुट F(L)
न्यूलाइन-सीमांकित स्ट्रिंग के रूप में पैटर्न है ।
नियम और स्कोरिंग
आप एक पूर्ण कार्यक्रम या एक फ़ंक्शन लिख सकते हैं। सबसे कम बाइट गिनती जीतता है, और मानक खामियों को रोक दिया जाता है।
परीक्षण के मामलों
[]
#
[0]
##.
###
.#.
[3]
.#.
###
.##
[2,0]
...#...
...#...
...#...
#######
##.#...
####...
.#.#...
[1,1]
...#.##
...####
...#.#.
#######
...#...
...#...
...#...
[1,2,0]
.......#...#...
.......#...#...
.......#...#...
.......########
.......###.#...
.......#####...
.......#.#.#...
###############
.......#.......
.......#.......
.......#.......
.......#.......
.......#.......
.......#.......
.......#.......
[3,3,1]
.......#.......
.......#.......
.......#.......
.......#.......
.......#.......
.......#.......
.......#.......
###############
.......#...#...
.......#...#...
.......#...#...
.......########
.......#...#.##
.......#...####
.......#...#.#.
[0,1,2,3]
.......#...#...#...............
.......#...#...#...............
.......#...#...#...............
.......#########...............
.......#.#.#...#...............
.......#####...#...............
.......#.###...#...............
################...............
.......#.......#...............
.......#.......#...............
.......#.......#...............
.......#.......#...............
.......#.......#...............
.......#.......#...............
.......#.......#...............
###############################
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
...............#...............
[0,0,1,2,3]
.......#...#...#...............#...............................
.......#...#...#...............#...............................
.......#...#...#...............#...............................
.......#########...............#...............................
.......#.#.#...#...............#...............................
.......#####...#...............#...............................
.......#.###...#...............#...............................
################...............#...............................
.......#.......#...............#...............................
.......#.......#...............#...............................
.......#.......#...............#...............................
.......#.......#...............#...............................
.......#.......#...............#...............................
.......#.......#...............#...............................
.......#.......#...............#...............................
################################...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
...............#...............#...............................
###############################################################
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
...............................#...............................
L = [2,0]
, आप सिर को काटते हैं और पैटर्न को देखते हैं F([0])
, फिर सिर को काटते हैं [0]
और पैटर्न को देखते हैं F([])
, जो 1x1 ग्रिड है #
। फिर आप 0
3x3 पैटर्न बनाने के लिए उस पर कटा-फटा इंडेक्स का उपयोग करते हैं, और 2
7x7 पैटर्न के निर्माण के लिए उस पर कटा-हुआ इंडेक्स का उपयोग करते हैं । अपने प्रश्न का उत्तर देने के लिए: हाँ, आप हमेशा 1x1 ग्रिड से शुरू करते हैं क्योंकि यह रिकर्सन का आधार मामला है।
#
?L !=[]
उस उदाहरण में, क्योंकि इसमें 1 या अधिक तत्व हैं। क्या इसका मतलब यह है कि एफ (एल) हमेशा एक#
पहली बार है?