परिचय
बेकर नक्शा एक महत्वपूर्ण गतिशील प्रणाली है कि अराजक व्यवहार दिखाता है। यह इकाई वर्ग से स्वयं के लिए एक फ़ंक्शन है जो निम्नानुसार सहज रूप से परिभाषित है।
- वर्ग को आधा में लंबवत काटें, जिसके परिणामस्वरूप आकार के दो आयताकार होते हैं
0.5×1
। - बाईं ओर के शीर्ष पर दाएं आधा भाग को ढेर करें, जिसके परिणामस्वरूप आकार का एक आयत होगा
0.5×2
- एक
1×1
वर्ग में वापस आयत को संपीड़ित करें ।
इस चुनौती में, आप इस परिवर्तन का असतत संस्करण लागू करेंगे।
इनपुट और आउटपुट
आपका इनपुट मुद्रण योग्य ASCII वर्णों का 2 डी सरणी है और 2m×2n
कुछ के लिए आकार का व्हाट्सएप m, n > 0
। आपका आउटपुट एरे का उपयोग करके प्राप्त की गई समान 6×4
सरणी है
ABCDEF
GHIJKL
MNOPQR
STUVWX
उदाहरण के तौर पे। सबसे पहले, बाएँ आधे के शीर्ष पर स्थित सरणी के दाहिने आधे को ढेर करें:
DEF
JKL
PQR
VWX
ABC
GHI
MNO
STU
फिर, स्तंभों को वर्णों के जोड़े में विभाजित करें, और स्वतंत्र रूप से प्रत्येक जोड़ी को 90 डिग्री पर दक्षिणावर्त घुमाएं, "आयताकार" मूल आकार में लंबा आयत: "
JDKELF
VPWQXR
GAHBIC
SMTNUO
यह उपरोक्त सरणी के लिए सही आउटपुट है।
नियम
इनपुट और आउटपुट प्रारूप लचीले हैं। आप न्यूलाइन-सीमांकित स्ट्रिंग्स, स्ट्रिंग्स की सूची या वर्णों के 2 डी सरणियों का उपयोग कर सकते हैं। हालांकि, इनपुट और आउटपुट चाहिए ठीक उसी प्रारूप है: यदि आप अपने प्रस्तुत करने के लिए किसी भी मान्य इनपुट पर समय की एक मनमाना संख्या तेज़ी से दोहराने में सक्षम होना चाहिए।
आप एक पूर्ण कार्यक्रम या एक फ़ंक्शन लिख सकते हैं। सबसे कम बाइट गिनती जीतता है, और मानक खामियों को रोक दिया जाता है।
परीक्षण के मामलों
Input:
12
34
Output:
42
31
Input:
Hell
! o
d -
lroW
Output:
lol
o W-
!H e
ldr
Input:
ABCDEF
GHIJKL
MNOPQR
STUVWX
Output:
JDKELF
VPWQXR
GAHBIC
SMTNUO
Input:
*___ ___ o
o|__) |__) *
*| | o
o __ __ *
*| | _ o
o|__ |__| *
Output:
|_____) *o
|_ _ *o
||_ __| *o
o*|_____)
o* |_ _
o*||_ _