परिचय
2 × n बुलियन मैट्रिक्स को चार वर्णों की एक स्ट्रिंग के रूप में दर्शाया जा सकता है . ':
। स्ट्रिंग में एक "ऊपरी पंक्ति" और एक "निचली पंक्ति" है, जिसमें डॉट्स 1s का प्रतिनिधित्व करते हैं और खाली स्थान 0s का प्रतिनिधित्व करते हैं। उदाहरण के लिए, 2 × 6 मैट्रिक्स
1 0 1 0 0 1
0 0 0 1 0 1
के रूप में प्रतिनिधित्व किया जा सकता है ' '. :
। आपका कार्य इस "संकुचित रूप" में एक मैट्रिक्स लेना है, और एक कन्वेयर बेल्ट की तरह, इसकी प्रविष्टियों को एक कदम दक्षिणावर्त घुमाएं।
इनपुट
आपका इनपुट वर्णों पर एकल स्ट्रिंग है . ':
। इसकी लंबाई कम से कम 2 होने की गारंटी है।
उत्पादन
आपका आउटपुट इनपुट स्ट्रिंग होगा, लेकिन हर बिंदु के साथ घड़ी की दिशा में एक कदम घुमाया जाएगा। अधिक स्पष्ट रूप से, ऊपरी पंक्ति पर डॉट्स दाईं ओर एक को छोड़कर, दाईं ओर एक से अधिक जगह है, जो नीचे जाती है। निचली पंक्ति पर बिंदु बाईं ओर एक कदम छोड़ते हैं, सबसे बाईं ओर को छोड़कर, जो ऊपर जाता है। विशेष रूप से, आउटपुट स्ट्रिंग की मूल लंबाई समान होनी चाहिए, और व्हाट्सएप महत्वपूर्ण है।
उदाहरण
इनपुट स्ट्रिंग पर विचार करें :..:'.
, जो 2 × 6 मैट्रिक्स से मेल खाती है
1 0 0 1 1 0
1 1 1 1 0 1
इस मैट्रिक्स का घुमा हुआ संस्करण है
1 1 0 0 1 1
1 1 1 0 1 0
जो स्ट्रिंग से मेल खाती है ::. :'
।
नियम और स्कोरिंग
आप एक पूर्ण कार्यक्रम या एक फ़ंक्शन लिख सकते हैं। सबसे कम बाइट गिनती जीतता है, और मानक खामियों को रोक दिया जाता है। आप यह तय कर सकते हैं कि इनपुट और आउटपुट उद्धरणों में संलग्न हैं या नहीं, और एक अनुगामी न्यूलाइन भी दोनों में स्वीकार्य है।
परीक्षण के मामलों
ये परीक्षण मामले दोहरे उद्धरण चिह्नों में संलग्न हैं।
" " -> " "
" ." -> ". "
". " -> "' "
"' " -> " '"
" '" -> " ."
": " -> "''"
"''" -> " :"
":." -> ":'"
":.'" -> ":'."
"..." -> ":. "
": :" -> "':."
"':." -> ".:'"
".:'" -> ": :"
" " -> " "
"::::" -> "::::"
":..:'." -> "::. :'"
" : .:'" -> ". '.. :"
": ''. :" -> "'' :'.."
"........" -> ":...... "
":::: " -> ":::'' "
" ::::" -> " ..:::"
" : : : : " -> ". : : : '"
".'.'.'.'.'" -> "'.'.'.'.'."
".. :: '.' :." -> ": ..'' .' :.'"
".' '.:: :.'. . ::.' '. . .::' :.'." -> "' ' .:.''..'.'. ..:' ' .'. ...'''..'.'"
s=>s.replace(/./g,(c,i)=>" '.:"[(i?q>' '&q!=".":c>"'")+(q=c,s[++i]?s[i]>"'":c>' '&c!=".")*2])
(2 भागों को फ्लिप करें ताकि मैं i, कम रेगेक्सपी और अधिक सरल परीक्षण कर