वर्णमाला गुणसूत्र


11

परिचय

वर्णमाला की चुनौतियां हमारे डीएनए में हैं, तो आइए दिखाते हैं।

चुनौती

निम्नलिखित टेक्स्ट को बिल्कुल प्रिंट करें:

AaBbCc        cCbBaA
BbCcDd        dDcCbB
EeFfGg        gGfFeE
HhIiJj        jJiIhH
KkLlMm        mMlLkK
NnOoPp        pPoOnN
QqRrSs        sSrRqQ
TtUuVv        vVuUtT
   WwXx      xXwW
       Yy  yY
         ZZ
         zz
         ZZ
       Yy  yY
   WwXx      xXwW
TtUuVv        vVuUtT
QqRrSs        sSrRqQ
NnOoPp        pPoOnN
KkLlMm        mMlLkK
HhIiJj        jJiIhH
EeFfGg        gGfFeE
BbCcDd        dDcCbB
AaBbCc        cCbBaA

नियम

  • आपको प्रत्येक अक्षर के मामले से मेल खाना चाहिए
  • अनुगामी और / या प्रमुख newlines और / या रिक्त स्थान की अनुमति है

जीतना

बाइट्स में सबसे छोटा कोड जीतता है।


14
यह बहुत मायने नहीं रखता है कि पहली दो पंक्तियों में बी और सी दोनों शामिल हैं जब अन्य सभी लाइनों (बार अनुभाग) में अद्वितीय पत्र होते हैं।
घातक

1
@ भाग्य को चुनौती को और अधिक रोचक बनाने के लिए
बीटा डिके

5
मैं व्यक्तिगत रूप से तर्क दूंगा कि यह विपरीत है
घातक

2
मेरा मानना ​​है कि 9 वीं पंक्ति में एक गलती है। "WwXx xX wW " होना चाहिए, "WwXx xXWw" नहीं होना चाहिए?
गोटो 0

2
@ बाइटडेके फैटलाइज़ सही है, जो चुनौती को और उबाऊ बनाता है।
चन्द्रावत ०

जवाबों:


18

विम (कोई बाहरी उपकरण), 106 बाइट्स

स्पष्टता के लिए नई सीमाएँ:

:h<_↵↵↵YZZPllabc♥
:s/./\u&&/g↵
qa6li↵♥q7@a3i ♥fY
i↵    →→↵  →↵→ð♥
ʌHA ♥9l
qbmaʌ99jY$P`ah@bq@b
y11G:g//m0↵P

यहाँ रिटर्न, राइट है, एस्केप है, ʌCTRL-V है, और ðडिलीट है।

गोल्फ एनीमेशन


3

पायथन 2, 230 बाइट्स

s='';m=['AaBbCc','BbCcDd','EeFfGg','HhIiJj','KkLlMm','NnOoPp','QqRrSs','TtUuVv','   WwXx',' '*7+'Yy',' '*9+'Z'];
p=lambda l:l.ljust(10)+l[::-1].rjust(10)+'\n';
for l in m:s+=p(l);
s+=' '*9+'zz\n';
for l in m[::-1]:s+=p(l)
print s

1
1) दूसरी, तीसरी और चौथी पंक्ति से अर्धविराम निकालें 2) पहली पंक्ति के अंत में नई पंक्ति को निकालें 3) अपने जवाब का आनंद लें daHugLenny के 4 की तुलना में छोटा होना) क्योंकि किसी ने भी यह नहीं कहा, PPCG में आपका स्वागत है!
आउटगॉल्फ

3

PowerShell v2 +, 175 169 163 154 बाइट्स

($x=(-join(65..67+66..86|%{$_;32+$_}|%{[char]$_})-split'(.{6})'-ne'')+'   WwXx'+'       Yy'+(' '*9+'Z')|% *ht 10|%{$_+-join$_[9..0]})
' '*9+'zz'
$x[10..0]

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

इस तथ्य का दुरुपयोग करता है कि Write-Outputनिष्पादन के अंत में डिफ़ॉल्ट तत्वों के बीच एक नई रेखा सम्मिलित करता है।

पहली पंक्ति शाखाओं का निर्माण करती है। हम कैपिटल अक्षरों के लिए ASCII मूल्यों के अनुरूप दो श्रेणियों पर लूप करते हैं, प्रत्येक पुनरावृत्ति charउस अक्षर और उस अक्षर की एक सरणी आउटपुट करता है +32(जो कि निचला ASCII बिंदु है)। यह -joinएक लंबे स्ट्रिंग में एक साथ एड होता है, फिर -splitप्रत्येक छह तत्वों पर (पार्न्स में इनकैप्सुलेटेड ताकि वे संरक्षित हों), इसके बाद -ne''विभाजन के परिणामस्वरूप खाली तत्वों को बाहर निकालना, इस प्रकार स्ट्रिंग्स की एक सरणी बन जाती है।

एक सरणी प्राप्त सरणी-संयोजन में इन तारों पर जोड़ने के लिए WwXx, Yyऔर Zएक PadRig तत्वों, तो ht 10उन सब को उचित चौड़ाई बनाने के लिए। इस बिंदु पर हमारे पास निम्नलिखित (एक तत्व प्रति पंक्ति) की तरह तार की एक सरणी है।

AaBbCc    
BbCcDd    
EeFfGg    
HhIiJj    
KkLlMm    
NnOoPp    
QqRrSs    
TtUuVv    
   WwXx   
       Yy 
         Z

उस पूरे सरणी को एक दूसरे लूप में पाइप किया जाता है ताकि मिरर किए गए स्ट्रिंग्स का निर्माण किया जा सके -joinऔर सरणी-उलट हो सके [9..0]

AaBbCc        cCbBaA
BbCcDd        dDcCbB
EeFfGg        gGfFeE
HhIiJj        jJiIhH
KkLlMm        mMlLkK
NnOoPp        pPoOnN
QqRrSs        sSrRqQ
TtUuVv        vVuUtT
   WwXx      xXwW   
       Yy  yY       
         ZZ         

हम परिणामी तारों को बचाते हैं $xऔर पाइप में एक प्रति भी डालते हैं।

अगली पंक्ति zzपाइप लाइन पर स्ट्रिंग रखती है, फिर $xरिवर्स ऑर्डर में सरणी। उन सभी को पाइपलाइन पर छोड़ दिया गया है और आउटपुट निहित है।

PS C:\Tools\Scripts\golfing> .\alphabet-chromosome.ps1
AaBbCc        cCbBaA
BbCcDd        dDcCbB
EeFfGg        gGfFeE
HhIiJj        jJiIhH
KkLlMm        mMlLkK
NnOoPp        pPoOnN
QqRrSs        sSrRqQ
TtUuVv        vVuUtT
   WwXx      xXwW   
       Yy  yY       
         ZZ
         zz
         ZZ
       Yy  yY       
   WwXx      xXwW   
TtUuVv        vVuUtT
QqRrSs        sSrRqQ
NnOoPp        pPoOnN
KkLlMm        mMlLkK
HhIiJj        jJiIhH
EeFfGg        gGfFeE
BbCcDd        dDcCbB
AaBbCc        cCbBaA

-9 बाइट्स mazzy के लिए धन्यवाद।


154 बाइट्स - '(.{6})'बजाय (......)और RightPadइसके बजाय पूंछ स्थान।
माज़ी

3

पायथन 2 , 156 बाइट्स

r=('AaBbCc.BbCcDd.EeFfGg.HhIiJj.KkLlMm.NnOoPp.QqRrSs.TtUuVv.   WwXx.%8cy.%10c.%10c'%(89,90,'z')).split('.')
for k in r+r[-2::-1]:s='%-10s'%k;print s+s[::-1]

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

512/(i**4+47)-1

,1,1,0,3,7,9,9,9,7,3,0,1,1,

जो प्रत्येक पंक्ति ( (-1)*' 'बराबर 0*' ') होने के लिए कितने रिक्त स्थान संलग्न करता है ।


2

पायथन 2, 331 241 229 बाइट्स

इसे और बाद में गोल्फ करेंगे।

l=("AaBbCc|BbCcDd|EeFfGg|HhIiJj|KkLlMm|NnOoPp|QqRrSs|TtUuVv|   WwXx|%sYy"%(" "*7)).split("|");n=0;v=1;p='for i in([8]*8+[6,2])[::v]:print l[n]+" "*i+l[n][::-1];n+=v';exec p;v=-1;n=9;print"{0}ZZ\n{0}zz\n{0}ZZ".format(" "*9);exec p

2

लूआ, 212 बाइट्स

s=([[         Z
       Yy 
   WwXx   
TtUuVv_QqRrSs_NnOoPp_KkLlMm_HhIiJj_EeFfGg_BbCcDd_AaBbCc    ]]):gsub("_","    \n")S="         zz"for z in s:gmatch"[%w ]+"do k=z..z:reverse()S=k..'\n'..S..'\n'..k end print(S)

काफी सरल, टिम्मीड के जवाब के आधार पर, तरह। वास्तव में खराब संकुचित चंक का उपयोग करके शीर्ष बाएं हाथ का निर्माण करता है, फिर दोनों को एक 'zz', और प्रिंट के चारों ओर एक बार दर्पण करता है।

इसे Repl.It पर आज़माएँ


2

05AB1E , 48 46 40 38 36 बाइट्स

Ž3ô8.DƵJ6XD)bTj»0ð:1žRAu¦«Dl.ιS.;º.∊

-2 बाइट्स (और इस वैकल्पिक दृष्टिकोण के साथ 10 और के लिए अवसर) @MagicOctopusUrn के लिए धन्यवाद ।

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

स्पष्टीकरण:

Ž3ô            # Push compressed integer 1008
   8.D         # Duplicate it 8 times
      ƵJ       # Push compressed integer 120
        6      # Push 6
         XD    # Push 1 twice
           )   # Wrap all into a list
b              # Convert each to binary
 Tj            # Add leading spaces to each binary-string to make them size 10  
   »           # Then join all strings by newlines
0ð:            # Replace all 0s with spaces
 žR            # Push the string "ABC"
   Au¦«        # Merge the uppercased alphabet minus the first "A" with it
       Dl      # Create a lowercase copy
             # Intersect the uppercase and lowercase strings: "AaBbCcBb..."
           S   # Convert it to a list of characters
1           .; # Replace every 1 with each of these characters in the same order
º              # Then mirror everything vertically without overlap,
 .∊            # and horizontally with the last line overlapping
               # (and output the result implicitly)

मेरा यह 05AB1E टिप देखें (अनुभाग कितना बड़ा पूर्णांक संपीड़ित करने के लिए? ) को समझने के लिए क्यों Ž3ôहै 1008और ƵJहै 120


1
एक मुखौटा दृष्टिकोण का उपयोग करके -2 बाइट्स:•3ô•8.D120 6 1D)bí.Bí»…abcA¦«Dus.ιv1y.;}0ð:º.∊
मैजिक ऑक्टोपस यूरिन

1
@MagicOctopusUrn आह अच्छा है, और कुछ संपीड़न और बिलिन के साथ "abc"यह 6 से अधिक •3ô•हो सकता है : हो सकता है Ž3ô; 120 6 1Dहो सकता है ƵJ6XD; …abcA¦«Dus.ιहो सकता है žRAu¦«Dl.ι। :)
केविन क्रूज़सेन

1
@MagicOctopusUrn ओह, और 2 बदलकर अधिक í.Bíकरने के लिए Tj(केवल नए संस्करण में काम करता है, लेकिन यकीन नहीं है अगर इसकी एक बग या जानबूझकर)। तो जाहिर है कि आपने अपने वैकल्पिक दृष्टिकोण के साथ कुल मिलाकर 10-बाइट को सक्षम किया। : डी
केविन क्रूज़सेन

1
आप जीत के लिए एक और मिल जाएगा;)।
मैजिक ऑक्टोपस Urn

1
@MagicOctopusUrn ललित, 2 और निकाले गए ; पी और žRAu¦«Dl.ιSवैकल्पिक रूप से हो सकता है A¬žR:uSDl.ι, लेकिन दुर्भाग्य से बाइट्स नहीं बचाएंगे। और 0м.Bइसके बजाय 0ð:एक बाइट कम के बजाय अधिक है .. किन्दा ने उम्मीद की थी कि ट्रेलिंग रिक्त स्थान जोड़कर दर्पण स्पष्ट रूप से बॉक्स हो सकते हैं, इसलिए यह .Bआवश्यक नहीं होगा, लेकिन शायद यह बेहतर है कि वे अन्य चुनौतियों के लिए मुझे नहीं लगता।
केविन क्रूज़सेन

2

स्टैक्स , 42 41 38 35 बाइट्स

înáöêòé{V║»╧å╓ä¥ì√‼╦▓°nlΓΣ▌ê9t☻*$╢√

इसे चलाएं और डीबग करें

अद्यतन: 41 बाइट समाधान में एक बग था। (हाँ, हालांकि इसका कोई इनपुट नहीं है) इसे ठीक करते समय, मुझे दाढ़ी बनाने के लिए 3 और बाइट्स मिले।

फिर से अपडेट करें: प्रतियोगिता पूर्ववत है, इसलिए मैंने 3 और आकस्मिक बाइट्स निकाले।

स्पष्टीकरण: (एक अलग, फिर भी पहचान के आकार का समाधान)

VA3(        "ABC"
VAD2T       "BCD...VWX"
+3/         concatenate and split into groups of 3
'Y]+        concatenate ["Y"]
{cv\$m      map each string using: copy, lowercase, zip, flatten
.ZzM+       concatenate ["Z", "z"]
|p          palindromize list of strings
m           map each string _ using the rest of the program and implicitly print output
  c%Nh6+H   (-len(_)/2 + 6) * 2
  )         left-pad (npm lol amirite) to length
  A(        right-pad to 10
  :m        mirror (a + a[::-1])

इसको चलाओ


1

मैट्रिक , 105 बाइट्स ( नॉनकमेटिंग )

वाह, मुझे बहुत सारे कीड़े मिले। इस चुनौती का एकमात्र कठिन हिस्सा बीच में क्रॉस था। इससे बाइट की गिनती लगभग आधी हो जाती है।

-A 1झंडे के साथ भागो

m+/c2+66+*r3*32%c2 7 6v{k-{}1z-L1Q}u{q-Lc2k+{}2b0b0b0a[a0a0u[a89a121]a[u0u90]]}a{Y}u[mQc9a122a122]u{z1cX}

स्पष्टीकरण:

m + / c2 + 66 + * r3 * 32% c2 7 6 # "सामान्य" ब्लॉक का निर्माण करें
v {k - {} 1z-L1Q} # ऊपर "असामान्य" भाग जोड़ें
u {q-Lc2k + {} 2b0b0b0a [a0a0u [a89a121] [[u0u90]]} # अजीब तिरछे 1/4 भाग करें
{{}} u [mQc9a122a122] u {z1cX} # ब्लॉक बनाया दर्पण, जोड़ने
                                             # हिस्सों के बीच में लोअरकेस zs

एक और बग मैंने अभी तक तय नहीं किया है कि आखिरी भाग, u{z1cX}जब आप कटौती के बाद डालते हैं तो काम नहीं करता है X। जांच / तय करेगा।




1

ब्रेनफक, 456 बाइट्स

+[>-[-<]>>]>[->++>++++++>++++>+<<<<]>>+>+>------<.<.>+.<+.>+.<+.<........>.>.<-.>-.<-.-->-.-->.>+++++++[-<<+++.<+++.>+.<+.>+.<+.<........>.>.<-.>-.<-.>-.>.>]<<<<...>>+++.<+++.>+.<+.<......>.>.<-.>-.>.<<<.......>>++.<++.<..>.>.>.<<<.........>>+..>.<<<.........>+..>>.<<<.........>>..>.<<<.......>>-.<-.<..>.>.>.<<<...>>--.<--.>+.<+.<......>.>.<-.>-.>.>+++++++[-<<---.<---.>+.<+.>+.<+.<........>.>.<-.>-.<-.>-.>.>]<<-.<-.>+.<+.>+.<+.<........>.>.<-.>-.<-.>-.

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


0

पायथन 3 , 215 बाइट्स (गैर-प्रतिस्पर्धात्मक)

p=lambda l:l.ljust(10)+l[::-1].rjust(10)
a=("AaBbCc|BbCcDd|EeFfGg|HhIiJj|KkLlMm|NnOoPp|QqRrSs|TtUuVv|   WwXx|%sYy|%sZ"%(7*' ',9*' ')).split('|')
print('\n'.join([p(x)for x in a]+[' '*9+'zz']+[p(x)for x in a[::-1]]))

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

दो पायथन 2 समाधानों से कुछ विचार लेता है, लेकिन उन्हें जुड़ने () का उपयोग करके दृष्टिकोण पर लागू होता है जो कुछ बाइट्स को बचाने के लिए लगता है। यह संभव है कि इसे और आगे बढ़ाया जा सकता है; मैं बाद में इस पर फिर से विचार कर सकता हूं।



@JonathanFrech पायथन 3 को इस चुनौती से बहुत पहले रिलीज़ किया गया था। यह टैग "गैर-प्रतिस्पर्धा" किसी अन्य कारण से होना चाहिए।
पिपरी

@pppery एक बात जो मैंने नोटिस की, वह यह है कि यह पोस्ट गुणसूत्र के बाएं-अवतल क्षेत्र को भरने के लिए स्थान नहीं बनाता है।
जोनाथन फ्रेच

@ मैं पूछ सकता हूं कि इस उत्तर को गैर-प्रतिस्पर्धात्मक क्यों कहा गया है?
जोनाथन फ्रेच


0

बबलगम, 168 बाइट्स

00000000: 6dd1 c712 8230 1006 e0fb 3e45 5e85 264d  m....0....>E^.&M
00000010: 7a51 b8a1 14e9 1d91 a757 4632 ce38 9bd3  zQ.......WF2.8..
00000020: e6cb a4ec 1f26 626f dc9d 1ce3 cedd d888  .....&bo........
00000030: 819d f898 62cc ef0c 4272 4ac5 8c62 26a6  ....b...BrJ..b&.
00000040: a744 00e9 21e7 4a41 b150 72f9 2181 5a9e  .D..!.JA.Pr.!.Z.
00000050: 2bad a658 6bd5 b954 416f 8cd6 ec28 7666  +..Xk..TAo...(vf
00000060: 6b34 3a58 bd3d 3823 c5d1 19ec de02 77f2  k4:X.=8#......w.
00000070: 667f a1b8 f8b3 37b9 f0a9 2ecf ebfa b5f5  f.....7.........
00000080: fabc c0b1 1ebc 0879 0574 4648 18fe ea6d  .......y.tFH...m
00000090: c3fc b7e3 ef44 f462 f489 6833 68db 6840  .....D.b..h3h.h@
000000a0: 6894 68e8 0cf2 3d6f                      h.h...=o

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

चूंकि यह मेरा पहला बबलगम जमा है, इसलिए यह इष्टतम समाधान नहीं हो सकता है। कृपया दोबार निरीक्षण करें।

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