“ DDoouubbllee ssppeeaakk !!”


57

ความท้าทายสุด ๆ ในวันนี้หรือไม่?

ฉันรู้สึกว่าเราได้ยินเรื่องที่ยุติธรรมเกี่ยวกับการพูดสองครั้งเมื่อเร็ว ๆ นี้เรามานิยามกันในวิธีการเข้ารหัส ...

Double Speech คือการพูดซ้ำทุกอักขระทุกตัวในสตริงข้อความทันที ตัวอย่างเช่น:

"DDoouubbllee  ssppeeaakk!!"

กฎระเบียบ

  • เขียนโค้ดซึ่งยอมรับหนึ่งอาร์กิวเมนต์เป็นสตริง
  • มันจะแก้ไขสายนี้ซ้ำทุกตัวละคร
  • จากนั้นมันจะคืนค่าสายอักขระการพูดสองครั้ง
  • มันคือรหัสกอล์ฟพยายามที่จะทำให้สำเร็จในจำนวนไบต์ที่น้อยที่สุด
  • โปรดใส่ลิงค์ไปยังล่ามออนไลน์สำหรับรหัสของคุณ
  • สตริงอินพุตจะมีอักขระในช่วง ASCII ที่พิมพ์ได้เท่านั้น การอ้างอิง: http://www.asciitable.com/mobile/

ลีดเดอร์

นี่คือตัวอย่างข้อมูลเพื่อสร้างทั้งกระดานผู้นำปกติและภาพรวมของผู้ชนะตามภาษา

เพื่อให้แน่ใจว่าคำตอบของคุณปรากฏขึ้นโปรดเริ่มคำตอบด้วยหัวข้อโดยใช้เทมเพลต Markdown ต่อไปนี้:

# Language Name, [Other information] N bytes

ที่Nมีขนาดของส่งของคุณ ข้อมูลอื่น ๆ อาจรวมถึงการตั้งธงและหากคุณได้ปรับปรุงคะแนนของคุณ (โดยปกติจะพุ่งออกมาจำนวนเช่น<s>M</s>) Nควรเป็นหมายเลขที่ถูกต้องที่สุดในส่วนหัวนี้และทุกอย่างก่อนที่ชื่อแรก,จะเป็นชื่อของภาษาที่คุณใช้ ชื่อภาษาและคำbytesอาจเป็นลิงค์

ตัวอย่างเช่น:

# [><>](http://esolangs.org/wiki/Fish), <s>162</s> 121 [bytes](https://esolangs.org/wiki/Fish#Instructions)

1
มันจะแก้ไขสตริงนี้ คุณต้องการส่งผ่านการอ้างอิงและปรับเปลี่ยนโดยเจตนาหรือไม่? และจากนั้นก็กลับสำเนาหรือการอ้างอิงถึงการปรับเปลี่ยนสตริงที่? ถ้าเป็นเช่นนั้นภาษาเช่น asm หรือ C จะต้องยอมรับสตริงที่มีความยาวชัดเจน (ตัวชี้ + ความยาว) โดยที่ความยาวเป็นความยาวสตริงปัจจุบัน (โดยบัฟเฟอร์มีขนาดใหญ่เป็นสองเท่า) หรือเป็นขนาดโดยรวมและคุณต้อง ทำซ้ำครึ่งต่ำ ดังนั้นคุณต้องเริ่มจากจุดสิ้นสุดและทำงานไปข้างหลังหรือจัดสรรพื้นที่ว่างแล้วคัดลอกกลับ แต่มีคำตอบใน C และ 8086 asm ที่ละเมิดทั้งหมด
Peter Cordes

3
@PeterCordes ฉันไม่สนใจว่าจะแก้ไขวัตถุเดียวกันหรือสร้างขึ้นใหม่
AJFaraday

2
ฉันขอแนะนำให้ใช้ข้อความเป็น "แก้ไข (หรือสร้างสำเนาที่แก้ไขแล้ว) ของสตริง" เพื่ออนุญาตคำตอบที่ทำหรือไม่แก้ไขแทน การทำให้ถ้อยคำง่ายขึ้นเพื่อ "ส่งคืนสตริงที่มีความยาวสองเท่าพร้อมกับอักขระแต่ละตัวที่ทำซ้ำ" จะดี แต่ก็ไม่ชัดเจนหากvoid foo(char *c, size_t len)ถูกกฎหมายที่ใช้บัฟเฟอร์อินพุต / เอาต์พุตหนึ่งตัวและความยาวและไม่มีค่าตอบแทนใด ๆ ผลข้างเคียงกับวัตถุที่มีตัวชี้ไป
Peter Cordes

สตริงว่างเปล่าได้ไหม
cschultz2048

1
@ cschultz2048 มีข้อความระบุว่าสตริงจะมีอักขระ ASCII ที่พิมพ์ได้เท่านั้นดังนั้นจึงบอกเป็นนัยว่าจะมีประชากรอยู่เสมอ ฉันคาดหวังว่ารหัสใด ๆ สำหรับความท้าทายนี้จะปล่อยสตริงว่างเปล่าไว้ ... อย่างไรก็ตามฉันไม่คิดว่ามันเป็นกรณีทดสอบที่ฉันจะใช้กับสิ่งนี้
AJFaraday

คำตอบ:


117

Malbolge , 20775 และ 2334 ไบต์

อาจเป็นไปได้ว่าฉันไม่ได้เอาชนะใครด้วย แต่มันสนุกอย่างเหลือเชื่อ

bP&A@?>=<;:9876543210/.-,+*)('&%$T"!~}|;]yxwvutslUSRQ.yx+i)J9edFb4`_^]\yxwRQ)(TSRQ]m!G0KJIyxFvDa%_@?"=<5:98765.-2+*/.-,+*)('&%$#"!~}|utyrqvutsrqjonmPkjihgfedc\DDYAA\>>Y;;V886L5322G//D,,G))>&&A##!7~5:{y7xvuu,10/.-,+*)('&%$#"yb}|{zyxwvutmVqSohmOOjihafeHcEa`YAA\[ZYRW:U7SLKP3NMLK-I,GFED&%%@?>=6;|9y70/4u210/o-n+k)"!gg$#"!x}`{zyxZvYtsrqSoRmlkjLhKfedcEaD_^]\>Z=XWVU7S6QPON0LKDI,GFEDCBA#?"=};438y6543s1r/o-&%*k('&%e#d!~}|^z]xwvuWsVqponPlOjihgIeHcba`B^A\[ZY;W:UTSR4PI2MLKJ,,AFE(&B;:?"~<}{zz165v3s+*/pn,mk)jh&ge#db~a_{^\xwvoXsrqpRnmfkjMKg`_GG\aDB^A?[><X;9U86R53ONM0KJC,+FEDC&A@?!!6||3876w4-tr*/.-&+*)('&%$e"!~}|utyxwvutWlkponmlOjchg`edGba`_XW\?ZYRQVOT7RQPINML/JIHAFEDC&A@?>!<;{98yw5.-ss*/pn,+lj(!~ff{"ca}`^z][wZXtWUqTRnQOkNLhgfIdcFaZ_^A\[Z<XW:U8SRQPOHML/JIHG*ED=%%:?>=~;:{876w43210/(-,+*)('h%$d"ca}|_z\rqYYnsVTpoRPledLLafIGcbE`BXW??TY<:V97S64P31M0.J-+G*(DCB%@?"=<;|98765.3210p.-n+$)i'h%${"!~}|{zyxwvuXVlkpSQmlOjLbafIGcbE`BXW??TY<:V97S64P31M0.J-+G*(D'%A@?"=<}:98y6543,1r/.o,+*)j'&%eez!~a|^tsx[YutWUqjinQOkjMhJ`_dGEaDB^A?[><X;9U86R53O20LKJ-HG*ED'BA@?>7~;:{y7x5.3210q.-n+*)jh&%$#"c~}`{z]rwvutWrkpohmPkjihafI^cba`_^A\[>YXW:UTS5QP3NM0KJ-HGF?D'BA:?>=~;:z8765v32s0/.-nl$#(ig%fd"ca}|_]yrqvYWsVTpSQmPNjMKgJHdGEa`_B]\?ZY<WVUTMR5PO20LK.IHA))>CB%#?87}}49zx6wu3tr0qo-nl*ki'hf$ec!~}`{^yxwvotsrUponQlkMihKIe^]EEZ_B@\?=Y<:V97S64P31M0.J-+GFE(C&A@?8=<;:{876w43s10qo-&%kk"'hf$ec!b`|_]y\ZvYWsVTpSQmlkNiLgf_dcba`C^]\?ZY;WV97SLK33HM0.J-+G*(D'%A$">!};|z8yw543t1r/(-,+*)(i&%fd"!~}|_t]xwvutslqTonmPNdchKIeHFbaD_AWV[><X;9U86R53ON1L.DCH+)EDC&;@#>=<;|98x6wu32s0p(',mk)(i&f|{"ca}`^z][wZXtWUqTRnmPNjcbJJ_dcbEDYB@@?ZSX;VUTS6QPO11F..CHGF)(C<A$?>=<}:98xx/uu,10/po,+$kiih%$#z!b}|{z]xwvXXmUUjonmPOjihafIdcbaD_^]??T<<QVUT76QPONG0..-HGFED=B%@?>=~|438yw5vt21r/o'&+lj(ig%fd"ca}`^z][wZXtWUqpoRQlkjihafIdcbaDBXW\?=YX;9UNMR53O20//DIH+)E>=B%#?"~<}{9zx6wu3tr0/pn,%$jj!&%$ed!~}|{zs\ZZYtsrqponglOjiLgfHdGEaDB^]@[=SRW:8T75Q42N1/K.,HG*E'=<A$"!!6;:{8x0/4us1rp.-,ml)('&%$#z!b}|{zy[qvutsUkTinmlejchKIIH]bE`_^A\[=Y<:VU86RKJO20LK.,HA@E(&BA$">76;|z8yw5vt2sq/pn,mkjj!&%$edy~a|{z][qpuXVUUjonQOkdchKIHH]baD_AWV[><;;PUT7R4JIN1/K.,H+)E(&B%#?"~<}{zz1654ut1*qoon+*#(i&%$e"!~``uzy\ZvonsVTSShmlOjLbafIGFF[`_B@\UTY<:99NSR53OHGL/-I,*F)'C&$@#!=~|:{y765vu21*/pnnm*)(!h%$#d!~}__tyx[vXnmrUSoRPlkNiKa`eHFbECBBW\[>Y;QPU86R53O20L/-I,*F)'&&;@?>!~;:92ywwv3210).o,+*k('g%fd"ca}`^z][wZXtsVqSihmPNjiLgI_^cFD`_B]?UTY<:VUT76QPONGL/--,GFEDC<%@?>!<;:98yw5.-2sq/.o,l$#(ig%fd"!b`|uty\ZYYnsrUpRhglOMiLJfIGcFD`CA]@>==RWVU87RQPONG0..-HGFEDC<A$?>!<;:zz1ww.321rq.-,+*)"'hffe"!~}|{zyrwZutsVqpoQQfkjMhJ`_dGEaDBAAV[Z=;WPOT75Q4211FKJ-+G@?D'%A$">!};|z8yw5vt210qp-,+*)('&}$e"!~}|^tyxwvXnWlqpohmfkNLLK`IdcbE`_^]\?=YRQV97S64P31ML/J,BAF)'CB%@"87<}{9zx6wu3tr0qo-nlkk"'&%fezcaa`{ty\wvuXsrTpSQmPNjiLJf_^cFD`_B@\UTY<:V97S64P31M0.J-+GFE('B;@#!!~;:3z765v321qq(-,m*j"!&ge#db~}`{]srwZXtWUTTinmPkMcbgJHdGEaDB^A?[><X;988MRQP32MLE.,,+FED=B%@?>!}549zxww.32sq/(',mk)(i&f|{"ca}`^z][wZXtWUqTRnQOkNLhgfIHcbaZ_B@@?ZYXWP9TSR5PON00EJI,*F?>C&$##8=<}:z216wu32s0p(',mk)jh&ge#db~a_{^\x[YuXVUUjonmPOjihg`IdcFa`BAAV[Z=;WPOT75Q42N1/K.,HGF)(CBA@?8=~;:9z76v43tr0)(-nl*)j'g}|#db~a_^^sxwZXtmlqTRnQOkNLhKIeHFbEC_^]@?ZYXWVUN7554ONMLKJIBG*EDC&$:9!!6;:9zy6543210/(o,+*)(h~%$#"bxav{tyxwpuXVVUjoRmlkNihJfIGcFD`CA]@>ZY<:VONS64PO2M/EDI,*F)'C&$@#!=~|:98yx/4u21r/.-mm$)(i&f|{"ca}`^z][wZXtWUqTRnQOkjMhJ`_dGEaDB^A?>>SXWV98SL5332MLEJ-HGF)DC%A@#>~65:{y76w4t,+0qo-,m*j"!&ge#"c~`vuz][wZXtWUqTRnQOkNLhgfIHcb[`C^]\[>YXW99N66KPON10KJIB+))(CBA@9>!<;:9z765uu,10q.n&%*ki'&g$dzy~a_{^\x[YuXVrUSoRPlOMiLJfIGFF[`_^A@[ZYXQV9TSRQ4ON0L/-,,AFE(C%;:?"~<;|z8105vtss*/.o,l$#(ig%fd"ca}`^z][wZXtWUTTinmlONihgfe^GEED_^]\[ZSX;VUT7RQP22GLK.I+A@E(&%%:?>!};438yw5vtss*/.om+$#(ig%$ec!xw|_]y\ZvYWsVTpSQmPNMMbgfeHGba`_^]V[>YX;VUTSR53OHGL/-,,AFE(C%;:?"~<;|9y105vt2sq/pn,mk)jh&ge#db~a_{zy\[vutsrqpiRmlkjiKafedcE[DY^]\UZSX;VUT7RQ322GLK.I+A@E(&BA$">76;|z8yw5vt2sq/pn,mk)jh&geddy~}|_^s\ZZYtmrUponQlkMihKIe^]bEC_^A\>TSX;988MRQ4O1GFK.,HG*E'=<A$">!};|z8yw5vt2sqpp',+*kj'~%f#"!b}|^z][wvYWslkpSQPPejiLJf_^cFD`_B]?UTY<:VU8S5KJO20L/-I,*F)'CB%#?87<;:{z76/vtts0/.',m*)(i&%$ddy~}`{]srwZXtWUqpSnPfejMKgJHGG\a`C^@VUZ=;W:8T75Q42N1/K.,++@EDC&%@?>7<}{{z7654-t10/p-,l*ki'&g$dzy~a_{^\x[YuXVrUSoRPlOMiLJII^cbaDC^]\[T=;;:UTSRQJO2MLK.IHGFE(&B;:?"~<}{98y6v.-2sq/pn,mk)jh&ge#db~a_{^\xwvYXsrqpohmPNNMhgfedc\E`_^A\[=YX;9UNMR53O20L/-I,*F)'C&$@#!=~|:{yxx/432sr/.-,+*#jhhg$#"!~}|uz]xwvYtsUqpSnPfejMKgJHdcFaCYX]@>Z=;WV9T6LKP31M0.J-+GF)D&<;@?>!~;:98765.3trrq.-,+*)('~g$#"c~}|{z][wpotWUqTRnQOkNLhgJeG]\aDB^]@[=SRW:8T75Q42N1/..CHGF)(CBA@?>=<5|98765u-210/o'n%*)(!&}$eccbw|_zyx[vuWsVTSShmlOMibafIGFF[`_B]?UTY<:V97S6433HML/-IBAF)'C&$@#!=~|:{y765vu,1r/.-nl$#(igff{"!b}_uty\ZYYnsrUSohglOMiLJfIGcFD`CA]@>Z=;W:877LQPO21LE.,,+FE>C&A@?"=<|{{276wu3,+0qonn%*)j'g}|#db~a_{^\x[YuXVrUSoRPlOMihgJIdc\aD_^]@[Z<XW:U7MLQ42N1/K.,H+)E(&B%#?"~<}{9zxww.321rq.-,%ljji&%$#z!b}|{^yxwYYnsrUSohglOMiLJfeHcE[Z_B@\?=Y<:V97S64P31M0.J-+**?DCB%$?>=<5:{876w432rr).-n+k#"'hf$#d!awv{^\xwZXtmlqTRnQOkNLhKIeHFbEC_B@\?=YXW:9TSRQPI200/JIHGFE>C&A@#!76||3876wv3210/.',m*)j'&%eez!~a_{tsx[YXXmrqTRngfkNLhgJeG]\aDB^A?[><;;PUTS65PONMLKJC,**)DCBA@?>=6;|987x54t21r/o'&+lj(ig%fd"ca``uzy\wYonsVTpSQmPNjMKgfIGc\[`_^A@[ZYXWVUTMR5PONML.DIHGF(>'<A@9>=6;|98y654tt+0/p-m%$)('hg|eccb}v{^yxwZutVrqToQgfkNLhgJeG]\aDBAAV[Z=X:POT7544INM0.JCBG*(D'%A$">!};|z8yw543ts0).o,+*)j'&%eezbbw|{z]\wvoXVVUponglOjihgJedcEEZ_^A?[TSX;9UT7R4JIN1/K.,H+)E(&B%#?"~<}{9zx6wutt+0/.on+*)"'h%$#"c~}|^^sxwZuWmlqTRnQOkjMhJ`_dGEaDB^A?[><X;9U86R53ON1L.DCHGF)(CBA@9"~~}:9876/4u210/p-,l*kihh}$#db~wv{^\[[putWUqjinQOkjMhJ`_dGEaDB^A?[><X;9U8655JONM0/JIHGF?D'BA@?"=<;{{2xx/432sr/.-,+*)(!h%$#"!aw|{zy[qZotsrkpinQOONchKfedcFa`B^A?[Z=X:POT7544INM0K-CBG*(D'%A$">!};|z8yw5vtss*/.-nm$)j'&%$e"!a}`^]]rwvYWslkpSQmPNjMKgJHdGEaDB^A?[ZY<;VO8665POHM0KJ-HGFED'%A:9>!}||387x5u-,1rp.-n+k#"'hf$ec!b`|_]y\ZvYWsVTpSQmlkNMhg`eHFFE`_^]V[>YXW:UTS55JON1L.DCH+)E(&BA$?!76;|z8yw54u2r*).om+lj('h%e{z!b`|{z]\wvutmrUponQOediLJII^cbEC_XW\?=Y<:V97S64P31M0.J-+G*(D'%$$9>=<}|98765.ussr/.-,+*#(i&%$e"!~``u]]rwvuXWrqponmfkNihKfeGcFD`CA]@>==RWV9T6LKP31M0.J-+G*(D'%A$">=<}|9876543,s0/p-,lkk"'&ge#zy~a_{^\x[YutWUqjinQONNchgfIHcba`_^]\UZ=XWVUT6LQPON0F/DIHG@E>C&A@#>=<||387x5u-,1rp.om+lj(ig%fd"ca}`^zy\wYonsVTpSQmPNMMbgfeHG\ECCB]V[>YXW:UT6R53O20//DIH+)E>=B%#?>!<|438yw5vt21rp.'&+lj(ig%fd"ca}`^zyx[ZunsVqpoRmlNjiLJf_^cFD`CA]@>Z=;WV9T6LKP31ML/J,BAF)'CB%@"87<}{zz1654ut10)pnnm*)(!&g$#"cawv{^\xwZuWmlqTRnQONNchgJeG]\aDB^]@[=SRW:8T75Q42N1/K.,H+)((=BA@#"=<;49z765v321qq(-,mk)"!&ge#"c~`vuz][wZXWWlqpSQmfejMKgfIGc\[`CA]@>Z=;W:8T75Q42NML/.IHGF?(&&%@?>=<5:{876w432rr).-n+k#"'hf$ec!~a|^tsx[YuXVUUjonQlNdchKIeHFbEC_B@\?=Y<:99NSRQ43NMLKJCH+))(CBA@?>7~;:9z76v43t1q)(-nl*ki'hf$ec!b`|_]y\ZvYWsVTSShmlkNMhgfedc\ECCB]\[ZYXWPU8SRQ4ONMLK.,HA@E(&BA$?!76;|z8yw5vt2sq/pn,mk)jh&ge#db~}|_^yxwvutslqTRRQlkjihgfe^Gba`C^]?[Z=;WPOT75Q42N1/K.,H+)E(&B%#?"~<}{zz1654ut10/.-,+*#j'&%$#cy~}|{]s\qvunsrkpSQQPejMhgfIdcEa`C^@VUZ=;WV9T6LKP31ML/J,BAF)'C&$@#!=~|:{y7xv4usrr).-,ml#(iggf#zc~}|_zy[wZXtsVTpihmPNjMKgfIdF\[`CA]\?Z<RQV97S64P31M0.--BGFE('B;$""!<;49z765v32r0qonn%*)jh&}|#dbaav{z]xZpotWUqTRnQONNchgJHd]\aDB^A?[><X;9U86RQP32MLEJ-++*EDC<%@?>!<;{9zx6wu3tr0qonn%*)j'g}|#db~}`{]srwZXtsVqSihmPNMMbgfIGc\[CCX]\[>=XWVO8665PONMFK.IHG*ED&B%#?>!<|438yw54u2r*).omll#('hf${z!b`|{^y[qpuXVrUSoRPlOMLLafedGFa`_^W\?ZYX;VU7SR5P2HGL/-I,*F)'C&$@#!=~|:{y7xv4usrr).-,ml)('&%|eccb}|{zyxqvYtsrUSihmPNjMKgfIdF\[`CA]@>Z=;WV9T6LKP31M0.J-+G*(''<A@?"!<;:98705v321rp(',mk)jh&%fd"yx}`^z][wZXtsVTpihmPNjMKgJHdGEaDBAAV[ZY<;VUTSRQPI200/JIHGFEDC<A$?>=~|438yw54u2r*).om+lj(igff{"!b`|uty\ZvYWsVTpSQmPNjMKgfeHGba`_^]\[TY<WVUTS5KPONM/E.CHGF?D=B%@?>!<;{9zx6wu32s0p(',mk)(i&f|{"ca``uzy\wYonsVTpSQPPejiLJf_^cFD`CA]@>Z=;W:8TSR54I200/JCH+FED'BA#?"~<}{98y6v.-2sq/pn,mk)(ig%|{"ca}`^z][wZXtsVqSihmPNMMbgfeHGb[`C^]\?ZY;WV97SLKP31M0.J-+G*(D'%A$">!};|z8ywvv-210qp-,%ljji&%${"c~}|_zy[wvYtVlkpSQmlOjLbafIGcbE`BXW\?=Y<:99NSR5P2HGL/-I,*F)'C&$##8=<;|{876/4u210q.-,ll#('hf${z!b`|{^\xqpuXVrUSonQlNdchKIedGEaZY^A?[><X;9U86R53O20//DIHG*)DCBA:#!!~;:98705v321r/.-mm$)(i&f|{"ca}`^zy\wYonsVTpoRmOediLJII^cbE`BXW\?=YX;V8NMR53O20L/-I,*F)'&&;@?>!~;:98705v321r/.n,mk)jh&ge#"ca}vuz][wZXtsVTpihmPNjMKgJHdGEa`C^@VUZ=;::OTSR54ONMLKJC,**)DCBA@?>7<}:98y65u3tr0qonn%*)j'g}|#db~a_{z]xZpotWUqTRnQOkNLhgJHd]\a`_BA\[ZYXWVOT7RQP3NM/KJ-H*@?D'%A$">!};|z8yw5vt2sq/pn,mkjj!&%$ed!~}|{zyxqZutsrqSinmlkMcLafed]b[`CAA@UZ=XWV9TS544INM0.JCBG*(DC&$@98=~|:{yxx/43tr0)(-nl*ki'hf$ec!b`|{^y[qputsVUjoRmlkNihJII^cbE`BXW\?=<<QVU8S5KJO20LK.I+A@E(&BA$?!76;|z87x5u-,1rp.om+ljii~%$#dc~w`^^]xwpuXsrqTonmOOdihKIe^]bEC_B@\[><XQPU86R5322GLK.,HA@E(&B%#?"~<}{9zx6wutt+0/.on+*#(i&%$e"!a}`^z][wZXtWUqTRnQOkNLhKIedcFE`_^W@>>=XWVUNS6QPO2ML.JI,G)?>&&;@?>!~;:9816w43tr*).omll#('h%e{z!b`|{^y[qpuXVrUSoRPlOMiLJfIGcFD`CA]\[>=XWVUTM6QP3NML..CHG*(D=<A$"!!6;:{y70/4us1rp.om+lj('&gf#"!~}|uz]xwZutVrqToQgfkNLhKIeHFbEC_B@\?=YX;V8NMR53O20L/-IHG*)DCBA@?>7~||{87654321*/p-,+l)('gg|#"ca}vuz][wZXWWlqpSnPfejMKgJHGG\a`C^@VUZ=;WV9T6LKP31MLK.-HGFEDCBA:?"=<;:9y16543s+r).',+*#(i&%$e"!~}|_]yrqvYWsVTSShmlOMibafIGFF[`_B@\UTY<:V97S64P31M0.J-+G*(''<A@?"!6}:9z76vuu,10qo-&%*ki'hf$ec!b`__tyx[vXnmrqpSRmfkNihgJedFbaD_AWV[><XW:U7MLQ4211FKJ-H*@?D'%A$">!};|z8yw5vt2sq/.-nm*)"iggf#"!x}`{z][qpuXVUUjonQlNdchKIedGbDZY^A?[><X;9U86R53O20L/-I,*FED'&A@?8=~;:{876vv-21rp.'&+ljii~%$ec!xw|_]yx[vXnmrUSoRPlOMLLafedGFa`_^W@>>=XWVUTMR5PO2ML.JI,G)?>C&$@#!=~|:{y7xv4us1rp.om+ljii~%$#dc~}|{zsx[YYXsrqpongPkjiLgfeGG\a`C^@VUZ=;W:8T75Q4211FKJ-H*@?D'%A$"!!6;:9zy654321*qoon+*)('&%|#d!~}`{zyxwZXtmlqTRnQONNchgJHd]\aDBAAV[Z=;WPOT75QP31MFEJ-+G*(D'%A$">!};|z876wv3210/.-&+l)(i&%eddy~}`^zsrwZXtWUqTRnQONNchgJeG]\a`_BA\[ZYXWVUN7RQPON0FKJIH*@)>CBA:?8=~||{27x543t10/oo&+*k(h~}$ec!~a|^tsx[YuXVUUjonQlNdchKIedGbDZY^A?[><X;9U86R53O20LKJ-,AF)DC&$:9>!}||387x5u-,1rp.-n+k#"'hf$ec!b`|_]y\ZvYWsVTpSQmlkNMhaJedGba`BBW\[><XQPU8655JON1/KDCH+)E(&B%#?"~<;:{z76/4u21r/.n,+l)i!~%fd"ca}`^z][wZXtWUqpSnPfejMKgJHdGEa`_BA\[ZS<::9TSRQJO2MLK.IH*F)'C&$@#!=~|:{y7xv43t1q)(-nl*ki'hf$#d!awv{^\x[YutsVUponmfkNihgJedFbaD_AWV[><;;PUT75QJIN1/..CHG*(D=<A$">=~|:327xv4us1rp.om+lj(ig%$#dc~}|{zs\wvYtsUTTinmPNjcbgJHdGEaDB^A?>>SXW:U7MLQPO21LKJIHG@E(CBA$"87}}4987xw43210/.'nllk('&%$#"!x}`{z][qpuXVUUjonQlNdchKIedGbDZY^A?[><X;9U86R53O20L/-I,*FED'&A@?>=<;:38y65432r*/.-,l$k"'&%|#z!b}|_zyxZZotsVTpihmPNMMbgfIGc\[`CA]\?Z<RQV97S64P3100EJIH+*?(&&%@9>!<;|98x65v3s+*/pn,mk)jh&ge#db~a_{^\x[YuXVUUjonmPOjchKIIHcb[D_^]@[Z<XW:8TMLQ42N1/KJ-H*@?D'%A@#>~65:{y7xv4us1rp.om+ljii~%$#dc~}v_]]\wvunsVqpSnmONNchgJHd]\aDB^]@[=SRW:8T75Q42N1/KJ-H*@?D'%A$">=~|:327xvuu,10/po,+*#(iggf#"!~}v{^yx[YonVVkponQPkjihg`eHFFE`_^]\[T=XWV9TS5Q42N1/K.,H+)ED'%A:9>!};|z87x5u-,1rp.om+lj(ig%$e"bxw|_]\\qvutWVqponmleNihKfeGcFDCCX]\?Z<RQV97S64PO20LEDI,*F)'C&$@#!=~|:{yxx/432sr/.-,+*)"'h%$#d!~`|{^y[qpuXVrqToQgfkNLhgJeG]\aDB^A?[><X;9U86R53O20//DIHG*)DCBA@?>=6}:9876v.3210p(o&+*#('~%fddcx}`{z]xwYutWrTjinQOkjMhJ`_dGEa`C^@VUZ=;W:8T75Q42N1/K.,H+)((=BA@#"7<}:9z765uu,10qo-&%*kihh}$#db~wv{^\xwZuWmlqTRnQOkNLKK`edcFE`YB@@?ZYRW:UTS6QP2NM0K-CBG*(DC&A#98=~|{{276wu3,+0qo-nl*ki'hf$ec!b`|_]yxwZYtslqTonQlkjLLafeHcE[Z_^]@?ZYXQ:887RQPOHM0KJI,GF(D'%A$">!};|z8yw54u2r*).om+lj(ig%fdccx}|_z\rqvYWVVkponQPkjihafIdcFDZY^A?>>SXW:U7MLQ42NM0K-CBG*(D'%A$">!};|z8yw5vt2sq/.-nm*)('&}f#"c~}|^^sxwZXtmlqTRQQfkjMKg`_dGEaDB^A?[><XWV98SRQPONGL/--,GFEDCBA:#>=<}:9y7xv4us1rp.om+*k(h~}$ec!b`|_]y\ZvuXVrkjonmPOjihgfed]Fa`C^]\>>SXW:U7MLQPO21LKJIHGFE>C&A@?>=}5:987w/v-210).',m*)(ig}|#db~a_{z][wpotWUqTRQQfkjMKg`_dGEaDB^A?[><X;9U86RQP32G0..-HAF)DC&A@"!!6;:{8x0/4us1rp.-n+k#"'hf$ec!b`|_]y\ZvuXsUkjoRPlOMLLafedGFaZ_B]\?ZYX::OTS64PIHM0.--BGF)'C<;@#!=<}:z216wu3tr0qonn%*)(ih%${dbba|{zsx[vutWrqSonQOkdchKIHH]baD_AWV[><X;988MRQ4O1GFK.,H+)E(&B%#?"~<}{zz1654ut10/(-n+*k('&ff{"!b}_utyxwZYtsrqjSQQPkjihg`eHcbaD_^@??TYX;V8NMR53ON1L.DCH+)E(&BA$?!76;|z87x5u-,1rp.om+lj(ig%$e"bxw|{z]\wvutslqTonmlOjihJJ_GG\a`_BA\[ZYXWVUN7RQPON0FKJIH*@)>CBA:?8=~||{27x5432s0/onn%*)jh&}|#db~}`{]srwZXtWUqTRnQOkNLhKIeHFbEC_B@??TYXW:9NS6QPON1LK-IH+F(>=B%#?"~<;|z8105vt2sq/pn,mk)jh&ge#db~}|_^yr[vutsVqpoQQfNNchgfIHcbaZCAA@[ZYXQV9TSRQ42HGL/-I,*))>CB%@"87<}{zz165v3s+*/pn,mk)jh&ge#db~a_{^\[[putsVUponmfkNihgfIdcEaDBAAV[Z=;WPOT75Q42N1/K.,H+)E(&B%#?>=~}:9876/vtts0/.-,+$)j'&ge{z!b`__tyx[vXnmrUSonQlNdchKIeHFbEC_B@\?=Y<:V97S64PON10KJIHGF?D'BA$?>=}}498yw5.-2sqpp',+lj(!~%fd"!b}_uty\ZvYWsVTSShmlkNMhgfedcb[D_^A\[Z<<Q99NSRQ43NMLKJIHG@E(CBA@?!7<;:9y1x/43,10).o,+l)('gg|ddy~}|_^s\ZZYtmrUponQlkjihKIe^]bEC_^A?[TSX;9U86RQ42NGFK.,H+)E(&B%#?"~<}{9zxww.321rq.',mkkj'&}fddc~}|uz]xwvYWmlTTinmlONihg`eHFFE`_^]V?ZYX;VU7S64PO2M/EDI,*F)'&&;@?"=}549zx6wu3tr0qo-nl*kihh}$#"cb}|{zs\wvYtsrTTinmPkMcbgfeHGba`_^W\?ZYX;VU766KPO2M/EDI,*))>CB%#?87<}{9zxww.32sq/(',mk)jh&ge#db~a_{^\xwvYXsrqpongPNNMhgfedcb[`C^]@>TSX;988MRQ4O1GFK.,HG*E'=<A$">!};|z8yw5vt2sq/pn,mk)('hg$#"!~}|uz]xwZutsUUjonQOkdchKIHH]baDB^WV[><XW:U7MLQ42N1/K.,++@EDC&%@?>=<;:92y65432r*/.-,l$k"'&%|#z!b``_ty\wvuXsrqSShmlOMibafIGcbEC_XW\?=YX;V8NMR53O20L/-I,*F)'C&$@#!=~|:98yx/4ussr/(o,+l)('g%$ed!xa__^yxqvYtsrUSihPPejihKJed]bE`_^A\[=Y<:V97SR5P2HGL/-IH+F(>=B%#?>!};438yw5vt2sq/pn,mkjj!&%$ed!~}v_zy\wvuWWlqpSnPfejihKJedcb[`C^]\?=SRW:8T7544INM0.JCBG*(DC&$@98=~|:{y76w4t,+0qo-nl*ki'hfeez!~}`_zyxwvoXVVUponmlkdiLgfeHcbD`_B@\UTY<:VU8S5KJO20L/-I,*F)'C&$@#!=~|:{y765vu210/.-&+l)(i&%$#"ca}vu]]rwvuXWrqponmleNLLKfedcba`_X]@[ZY<WV877LQP3N0FEJ-+G*(D'%A@#>~65:{y7xv43tr0)(-nl*ki'hf$ec!b`|{z]\wvutsrqpinQlkjihJ`edcbDZCX]\[TYRW:UT7RQP22GLK.I+A@EDC&%:#!!~;49z765v32r0/pn,%$)jh&ge#"ca}vuz][wZXtsVqSihmPNjMKgJHdGEDDY^]\?>YRW:UT75KJO20//DIH+F(>=B%#?>!<|438yw5vt2sq/pn,mk)jh&ge#db~}|_^yxqZutWrqpRRglkNLha`eHFEEZ_^A?[TSX;9U86R53O20LKJ-,GFE>C&A@?"=<;{{276wu3,+0qo-,mk)"!&ge#"c~`vuz][wZXtWUqTRnQOkNLhKIeHFba`CB]\[ZS<::9TSRQPIN1LKJ-+A@((=BA@#"=<;:981xvvu210/.-,%*k('&g$#cbbw|{^y[qpuXVrUSoRPlOMiLJfeHcE[Z_B@\[>Y;QPU86RQ4O1GFK.,HGF)(CBA@?>=6;|98y654tt+0/p-m%$)jh&ge#db~a_{^\x[YuXVrqToQgfkNLhKIeHFEEZ_^]@?ZYXWVUTSL5PONML.DIHGF(>'<;@?>=6;|zzy05v321rp(',mk)jh&%fd"yx}`^]]rwvYWslkpSQmPNMMbgfIdF\[`CA]@>Z=;W:8T75QPO21FK.IH+)?>C&$##8=<}:z216wu32s0p(',mk)jh&ge#db~a_{^\x[YuXVrqpSRmfOjiLgfeGG\a`CA]VUZ=;::OTS64PIHM0.J-+G*(D'%A@?"!<;49z765v321qq(-,mk)"!&ge#"ca}vuz][wvYtVlkpSQPPejiLgI_^cFD`CA]@>Z=;W:8T75Q42NML/.IHG@)''&A@?>7<}:98y65u32s0p(',mk)jh&ge#"c~`vuz][wvYWslkpSQmPNjMKgJHdGEDDY^]\?>YXWVOT7RQ4ONM//DIH+F(>=B%#?"~<}{9zx6wu3tr0qo-,m*j"!&ge#db~a_^^sxwvYXsrqpohQOONihgfed]bE`_^A\[=Y<:V97S64P31ML/J,BAF)'C&$@?"=}549zx6wu3tr0/p-m%$)jh&geddy~}|_^yxwvutmrUSSRmlkjihg`IdcbE`_A]@>ZY<:VONS64P31M0.JI,G)?>C&$@#!=~|:{y765vu210/.-,%ljji&%$#"!~}v{^yxwZXnmrUSRRglkNLha`eHFbEC_^A\>TSX;988MRQ42NGFK.,H+)E(&B%#?"~<;:{z76543210).o,+*)(h~%$#"bxav{zyrwpuXsrUponPPeMMbgfeHG\ECCB]V[>YXW:8NMR53O20//DIH+F(>=B%#?"~<}{98y6v.-2sq/.o,l$#(ig%$#dc~w|_zyx[vutsrUSohglOMLLafeHFb[Z_B@\?=YX;9UNMR5322GLK.,HA@E(&B%#?"~<}{9zx6wu321rq.-&m*)jh&%$#"cb}|{ty\wvuXVlkSShmlkNMhgfe^GEED_^]\[TY<WV9TSRQP31MFEJ-+**?DC&A#98=~|:9z7w/.3tr0qo-nl*ki'hf$ec!b`|_]yxwZYtsrqpinQOONihgfed]Fa`CAW\[ZY<;VUTSRQJ3110KJIHGFE>C&A@#!76||3876wv3210/.-&+l)('h%$#ccx}|_]yrqvYWsVTpoRmOediLJII^cbE`BXW\?=Y<:99NSR53OHGL/-I,*F)'C&$@#!~~5:98yx543210/.'n+*)('g}$#"!aw`uzyxqvotWrqTonPOOdihKIe^]bEC_B@\?=Y<:V97S64P31M0.J-+GFE('<A$?>=~;:9yy054u2r*).om+ljii~%$ec!xw|_]\\qvuXVrkjoRPOOdihKfH^]bEC_^A\>TSX;9U86R53O20//DIHG*)D=&$$#>=6;|98y65u32s0p(',mk)jh&ge#db~a_{^\x[YuXVrUSRRglkjMLgf_dGbaD_^]??TYX;9UNMR5322GLK.,HA@E(&BA$?!76;|z8yw5vtss*/.-nm*)(!hffe"!~}v{^yxwZutsUUjonQOkdchKIedGEaZY^A?[Z=X:POT75Q42N1/K.,H+)E(&B%#?"~<;:{z7654-2s0/pn,+*)(ih%$#"!xa__^yxwvutmrUponQOedLLafedGFa`_^]\UZ=XWV9TS5Q42NM0.JCBG*(DC&A#98=~|{{276w4t,+0qo-nl*ki'hf$ec!b`|_]yxwZYtsrqpongPkjMhgfHH]baD_AWV[ZY<;VUTSRQPOHM0KJIHG)?DCBA#9"7<;49816w432s0/.nn%*)j'g}|#db~a_{z][wpotWUTTinmPNjcbgJHdGEaDB^A?[><X;988MRQP32G0..-HAF)DC&$:9>!}||387x5u-,1rp.-n+k#"'hf$ec!b`|_]y\ZvYWsVTpSQmlkNMhafIdcFa`_AAV[Z=;WPOT7544INM0.JCBG*(DC&A#98=~|:{y7xvuu,10/po,+$kiih%$#z!b}|{^yxwYYnsrUSohglOMihKIe^]bEC_^A\>TSX;9U86R53O20L/-I,*F)'C&$@?>!~;:927x54us10/.-nm*)('~geed!~}|{ty\wvuXVlkSShmlkNMhgfed]bE`_B]\>ZY<W9ONS64PO2M/EDI,*F)'C&$@#!=~|:{y7xv4us10/po,+*)('~geed!~}|{zyrwZutWUkponmPOjihgfed]bE`_B@VU==RWVU87RQPONMLKD-HGFED&<A@?>~6}498705.3trrq(-n+*)j'&feez!~a|^tsx[YuXVUUjonQlNdchKIedGbDZY^A?[Z=X:POT75Q42N1/K.,HGF)(=B%@?"=<;{{276wu3,+0qonn%*)jh&}|#db~}`{]srwZXtWUqTRnmPkMcbgfeHGb[DBBA\[TY<WVU86LKP31ML/-IBAF)'CB%#?87<}{zz165vt2+*/pn,mk)jh&ge#db~a_^^sxwvYXsrkpSnmPNdchKIHH]baD_AWV[><XW:U7MLQ42N1/K.,H+)E(&B%#?"~<}{987xw432+r/.o,+*jj!&%fd"yx}`^]]rwvYWslkpSQmPNjMKgJHdcbED_^]\UZ=XWV9TSR44INM0.JCBG*(DC&$@98=~|:9z7w/.3tr0qo-nl*ki'hf$ec!b`|_]yxwZYtsrqpiRPPOjihgfe^cFa`_B@VU==RWVU87RQPONMLE.,,+FEDCBA@?8=~;:{87w5vt2sq/pn,mk)jh&%f#cyx}`^z][wZXtWUqTRnQOkNLhKIeHFEEZ_^]@?ZYXWVUTSLQ4ONMLK-CHGFE'=&;@?>7<5:{8765v32r0/p-m%$)jh&ge#"c~`vuz][wvuXWlUSSRmfkNihKI_^FF[`_^A@[TY<WVU8SR4P31M0.J-+GF)D&<;@#!=<}:z216wu3tr0qo-nl*)(ih%${d!~a|{]\\qvuXVrkjoRPlOMiLJfIGcFD`CA]@>Z=;W:8TSR54ONMFK.IHG*ED&BA$?!76;|z8ywvv-21rp.'&+lj(ig%$e"bxw|_]y\ZvYWsVTpSQmlkNMhgfe^GEED_^]\[TY<WV9TS5QP3N0FEJ-+G*(D'%A$">!};|z8yw5vt2sqpp',+*kj'&%$#z!b}|_zyxZZotsVTpihmPNMMbgfIGc\[`CA]\?Z<RQV97S64P3100EJIH+*EDCBA@9"=<}:98xx/43t1q)(-,+lk('&%$#"y~a|{z][qpuXVUUjonQOkdchKIeHFbEC_B@\?=Y<:V97S64P3100EJIH+*EDCBA@?>7~;:987w/4321q)p',+$)(!&g$#"!b}|^z][wvYWslkpSQmPNjMKgJHdGEaDB^A?>>SXWV98SRQJ3110KJIHAF)DCBA$?>=<;|z8105vt2sqpp',+lj(!~%fdccx}|_z\rqvYWsVTpSQmPNjMKgJHdGEDDY^]\?>YXWVOT7RQPO2ML.JI,G)?>C&$@#!=<}{9216wu3tr0qo-nl*ki'hf$ec!~}`_zyxwvoXsrqpSnmlNNcKK`edcFE`_^]\[ZS<::9TSRQPONMFK.IHGF)'=<A$">!}||387x5u-,1rpoo&+*k(h~}$ec!b`|_]y\ZvYWsVTpSQPPejihKJedcba`_^W\?ZYXWV8NSRQP2H1FKJIBG@E(CBA@#>=};|zyy054us1*).om+lj(ig%fd"ca}`^z][wvuXWlUpoRmlkjiLJf_^FF[`_^A@[TY<WVU8SRQPO20LEDI,*F)'CB%@"87<}{9zx6wu3tr0qo-nl*ki'hf$#"cb}|u^\\[vutmrUpoRmlkMihKJedc\aD_^]@>TS;;PUTS65PONMF/--,GFEDC<A$?>=~;:z8yw5vt21r/o'&+lj('h%e{z!b`|{^\xqpuXVrUSoRPlOMiLJII^cbaDC^]\[ZSX;VU8SRQ33HML/J,BAFED'&A@?>=<5|zzy6543210).o,+*k('g%fd"!b}_uty\ZvuXsUkjoRPlOMiLJfeHcE[Z_B@\?=Y<:V97S6433HMLK.-HGFEDCB;@#>=~|438ywvv-21r/o'&+lj('h%e{z!b`|_]y\ZvYWsVTpSQmPNjMKgfeHGba`_^]\[T=XWVUT6LQPON0F/DIHG@E>C&A@#>=<||387xv4-,1rpoo&+*ki'~}$ec!b`|_]y\ZvutWVkpSnmlOjiKJJ_dcFD`YX]@>Z=;WV97SLKP31M0.J-+G*(D'%A$">!}||3876wv3,sqqp-,%*k('h%$#c!~a`{zsx[vutWUkjRRglkjMLgfe^GEED_^]\UZ=XWV9TS544INM0K-CBG*(D'%A$">=~;{327xv4us10qo-&%*ki'hf$ec!b`|_]yxwZYtsrqjoRmlOjihJJ_dcFaCYX]@>Z=;W:8T75Q42N1/K.,HG*E'=<A$">!};|zyy0543ts0/.-,%ljji&%$#"!x}`{zy\wvXtWUqTRnmPkMcbgJHdcFaCYX]@>ZY<W9ONS64P31M0.JI,*F?>CBA$#>=<;:927x54us+*/pnmm$)(i&f|{"ca}|_z\rqvYWsVTpSQmPNjMKgJHdGEaDB^]\?>YXWVUTSL5PO2MLK--BGF)'C<;@#!~~5:9zx6/.3tr0qo-nl*ki'&%fe"!~}|{zyrwZutsrqSinmlkMcLaf_dcb[`C^]@[Z<X;9U86RQ42NGFK.,++@ED'B$:9>!};|z8yw5vt21r/o'&+lj(igff{"!~a`u^yx[YonVVkponQPkjcLJJIdcb[`C^]@[ZY;;PUT75QJINML/.IHG@E(&&%@?>=<5:{87xv.-ss*/.-nm*)('&}$e"!b}|{]]rwvYWslkpSQmPNjiLgI_^cFD`_B]?UTY<:VU86RKJO20LK.I+A@EDC&%@?>=<;4{yyx543210/(-n+*)j'&f$ec!~a|^tsx[YuXVrqToQgfkNLhgJeG]\aDB^A?[><X;988MRQP32MLKJIHG@E(CB%#?>=<;|3z765432+0q.-,m*)i'hf$ecbbw|{^\xqpuXVrqTRngfkNLhgJeG]\aDB^A?[><X;988MRQ42NGFKJI,AF)DCBA$?>=}}4zz1654ut+rppo,%*k('&%f#"baav{z][wpotWUqpSnPfejMKgJHdGEaDB^A?[><X;9U86R5322GLKJ-,G@E(CBA@#>=};:{8x0/4us1rp.-nl*#"'hf$ec!b`|_]y\ZvYWsVTponQPkjcLgfedGba`BBW??TYXW:9TSRQJ3110KJIHG@E(CBA@#!76;|z8ywvv-21r/o'&+ljii~%$e"bxw|_]y\ZvYWsVTpSQmPNjMKJJ_dcbED_^]\[TY<WVUT7RQ3O20//DIH+)E>=B%#?"~<}{9zx6wu3tr0qo-,+lk('&%$#zc~}`^zyxwvYnWrqponmfkNihgJedcEEZ_^A\>TSX;9UT7R4JIN1/KJ-H*@?D'%A@#>~65:{y76w4t,+0qonn%*)j'g}|ddy~}|_ty\wvutWrqpRRgOOdihgJI^GEED_X]@[ZYX;VU766KPO20LEDI,*FE(C%;:?"~<}{9zx6wu3tr0qo-nl*ki'hfeez!~}`_zsx[vutsVqpRnmPkMcbgJHdGEa`CA]VUZ=;W:8T75Q42N1/K.,H+)EDC&%@?8!<;:9z765uu,rr).-,ml)('&}fddc~}|{zsx[vutsVTjinQOkNLKK`edGbDZY^A?>>SXW:U7MLQ42N1/K.,H+)E(&B%#?"~}}4987xw43210).o,+*)j'&f$ecbbw|{^\xqpuXVrUSoRPlOMiLJfIGcFD`_^A@[ZYXWVO8SR53ONMLK.C,GFEDCB;@#>=<}:9y7xv43t1q)(-nlkk"'&ge#zy~a_{^\xwZXtmlqTRnQOkNLhKIeHFbEC_^]@UZ=XWVU8SRQ33H00EJIH+*?(&&%@9>!<;:9z76vuu,10qo-&%*ki'&g$dzy~a_{^\x[YuXVrUSoRPlOMiLJfIGFF[`_^A@[TY<WVUT7RQ3ON1L.DCH+)E(&BA$">76;|z8yw5vt2sq/pn,mk)jh&%$ed!~w`{zyx[vutVVkSShmlkNMhgfe^GEED_^]\[TY<WVUT75KJO20L/-,,AFE(C%;:?"~}}498y6v.-2sq/pn,mk)jh&ge#db~a_^^sxwvYXsrqpohmPkjihKfeGcFDCCX]\?=YRQV97S64P31M0.J-+G*(D'%A@?"!<;:9870w43tr0/.-,m$k('&%$#z!b}|{^yxZYYnsrUSohglOMLLafeHcE[Z_B@\?=Y<:V97S64P31M0.J-+GF)D&<;@#!~~5:98y05v3210q.-,ll#ii~%$#dcxa__^yrwZutsrUpoQPPejiLJf_^cFD`_B]?UTY<:V97S64P31M0.J-+G*(D'%A$"!!6;:9zy6/4u210/p-,l*)j'g}|#db~a_{z][wpotWUqTRnQOkNLhKIeHFbEC_^]@?ZYR;VU86RQPON1F/JIHGFE>C&$@#>7<;:9z16w4321r/.n,+l)i!~%fd"ca``uzy\wYonsVTpSQmPNjMKgJHdGEaDBAAV[ZY<;P977LQ4221FK.IHGFE(CBA##8~~5:98yx/4u210qo-,+*)j!h%$#"!~w|_zyx[YonsVTpSQmPNMMbgfIdF\[`CA]@>Z=;W:8TS6Q3IHMLK.C,GFEDCB%^#K=[}GziUUfSt,ON)ooK%kH5XgCBdSRQ=v_^9'[%Y#FlUTR.-P>j<htIHH]o4`l1A?>Zwv*:8TSq5]3!kk/DgHTwd'b%;^L\[Z|49i1Tv4u2rr)(nKl76jE~%BdSbQ`Ouz\[8ZuWs3UC0Rm->jvKt`HG#EE`B1@/z==vutOT&Ro]O[MYKJVyf*c(b%%ML]=Z;X3i1xTRRt+*pp-,%[jYhD%CAARa}+_MLr&Y$5V3DToAmPej*;a`e$]#[Z_B{@[-fwv)UT&qKPmllj/hhBx)(>C&_M^]7Z}Xz8yTf.@Qba/;^,lkk"!WC1BS@-`_uMyK7I5XVV200{mfNj*uK&HHpb[D}B@zy=,+QV9Tr6p]"Nk0|{VBeSRcPa$_9Kn};{zEhgT4u,>*);'nJIkiEW210SRQ=<*;(K&I$tslk}BA@?eMv;(JI$F""mB^|i>>=vW)9'7%$#2NlYX-,HA@)''%%_?8[~;{zzVCT.d,s*N_n,mk6"FDCCTA?>P+{z(xq655s22}S/gfkjLL:fIH#EE!YAjVzgYX:)(s65p]m[MY/hCB+)RcPa$#""=<|43ixwS4Q2P*`p'KJHZ(!WVBec!-P=*ML9J6$GF3q10A-O>=c;(J%HGF!~_^0?.-w+QcUs`p4JmH1//{gyxeRQ

ลองออนไลน์!

หากความท้าทายไม่จำเป็นต้องหยุดชะงักในบางจุด (เช่น eof) มันจะไม่สำคัญเลยทีเดียวให้คะแนน2334 ไบต์ :

bP&A@?>=<;:9876543210/.-,+*)('&%$T"!~}|;]yxwvutslUSRQ.yx+i)J9edFb4`_^]\yxwRQ)(TSRQ]m!G0KJIyxFvDa%_@?"=<5:98765.-2+*/.-,+*)('&%$#"!~}|utyrqvutsrqjonmPkjihgfedc\DDYAA\>>Y;;V886L5322G//D,,G))>&&A##!7~5:{y7xvuu,10/.-,+*)('&%$#"yb}|{zyxwvutmVqSohmOOjihafeHcEa`YAA\[ZYRW:U7SLKP3NMLK-I,GFED&%%@?>=6;|9y70/4u210/o-n+k)"!gg$#"!x}`{zyxZvYtsrqSoRmlkjLhKfedcEaD_^]\>Z=XWVU7S6QPON0LKDI,GFEDCBA#?"=};438y6543s1r/o-&%*k('&%e#d!~}|^z]xwvuWsVqponPlOjihgIeHcba`B^A\[ZY;W:UTSR4PI2MLKJ,,AFE(&B;:?"~<}{zz165v3s+*/pn,mk)jh&ge#db~a_{^\xwvoXsrqpRnmfkjMKg`_GG\aDB^A?[><X;9U86R53ONM0KJC,+FEDC&A@?!!6||3876w4-tr*/.-&+*)('&%$e"!~}|utyxwvutWlkponmlOjchg`edGba`_XW\?ZYRQVOT7RQPINML/JIHAFEDC&A@?>!<;{98yw5.-ss*/pn,+lj(!~ff{"ca}`^z][wZXtWUqTRnQOkNLhgfIdcFaZ_^A\[Z<XW:U8SRQPOHML/JIHG*ED=%%:?>=~;:{876w43210/(-,+*)('h%$d"ca}|_z\rqYYnsVTpoRPledLLafIGcbE`BXW??TY<:V97S64P31M0.J-+G*(DCB%@?"=<;|98765.3210p.-n+$)i'h%${"!~}|{zyxwvuXVlkpSQmlOjLbafIGcbE`BXW??TY<:V97S64P31M0.J-+G*(D'%A@?"=<}:98y6543,1r/.o,+*)j'&%eez!~a|^tsx[YutWUqjinQOkjMhJ`_dGEaDB^A?[><X;9U86R53O20LKJ-HG*ED'BA@?>7~;:{y7x5.3210q.-n+*)jh&%$#"c~}`{z]rwvutWrkpohmPkjihafI^cba`_^A\[>YXW:UTS5QP3NM0KJ-HGF?D'BA:?>=~;:z8765v32s0/.-nl$#(ig%fd"ca}|_]yrqvYWsVTpSQmPNjMKgJHdGEa`_B]\?ZY<WVUTMR5PO20LK.IHA))>CB%#?87}}49zx6wu3tr0qo-nl*ki'hf$ec!~}`{^yxwvotsrUponQlkMihKIe^]EEZ_B@\?=Y<:V97S64P31M0.J-+GFE(C&A@?8=<;:{876w43s10qo-&%kk"'hf$ec!b`|_]y\ZvYWsVTpSQmlkNiLgf_dcba`C^]\?ZY;WV97SLK33HM0.J-+G*(D'%A$">!};|z8yw543t1r/(-,+*)(i&%fd"!~}|_t]xwvutslqTonmPkjLhKIeHFbEC_^A?[TSX;9UT7R4JIN1/K.,H+)E(&B%#?"~<}{987x/4u21rp(',mk)jh&%fd"yx}`^z][wZXtWUTTinmPkMcbgJHGG\a`C^@VUZ=;::OTS6Q3IHMLK.-B+FE(CBA##8~~5:98yx5.3t10q.-,+*ki'~}eez!~}`_zyxqvYtsVqpoQQfkjMhJ`_dGEaDBAAV[Z=;WPOT7544INM0K-CBG*(D'%A$">!};|z8yw5vt210qp-,+*#j'&g$#"!~a_{ts[[putsVUponmlkdMhgJedcEEZ_^A\>TSXWV98SRQPONMFK.IHGFE'=BA@?!7~5:9816/4u21r/.-,+lj(!~ff{"!~a`uz]xwvYtsUqTRnQONNchgJHd]\aDBAAV[Z=;WPOT7544INM0.JCBG*(''<A@#!=65:{yxx/43tr0)(-nlkk"'&ge#zy~}|_ty\wvYWmlqTRnmPkMcbgJHdcFaCYX]@>==RWV97SLKP31M0.J-+G*(D'%A$">!}||3876wv-t10/p-,l*)(i~%fddcx}`{zy\wvXtWUqTRnQOkjMhJ`_dGEDDY^]@[=SRW:877LQP3N0FEJ-+**?DC&A#98=~|{{276w4t,+0qonn%*)j'g}|#db~a_^^sxwvYXmrUponQlkMiLJfIGFF[`_B@\UTY<:99NSR53OHGL/-,,AFE(&B;:?"~}}498yw5.-2sq/.-n%l)('&%$e@b>,+^^:87Z5n"!10/QP-kMv(gf%Gc543}|0{[-YXu)t87L5]Ol~jjiz++evbaa`M^!=Z|kWWD05S3?O*)o'JJH)F!~f1TAy>,<^]:xJ6YXmlD0SAQPk+vKaJ%%F5ECCX|zz=xRQ

ลองออนไลน์!

คำอธิบาย

ฉันถูกขอให้อธิบายว่าโปรแกรมทำงานอย่างไร ฉันจะเลือกชิ้นที่สองเพราะมันง่ายกว่าที่จะอธิบายมากกว่าเล่มแรก แต่วิธีการทำงานทั้งสองนี้คล้ายกันจริงๆ

เรามาเริ่มกันเลยกับการถอดรหัสรหัส ในฐานะที่เป็นคนลงความเห็นทำมันก่อนที่ฉันจะเริ่มทำงานกับคำอธิบายดังนั้นฉันแนะนำให้คุณลองดู

มันไม่ได้ทำให้การอ่านโปรแกรมง่ายขึ้น แต่อย่างใด แต่ก่อนที่เราจะกระโดดเข้าไปในโค้ดเราจะทบทวนพื้นฐานของ Malbolge ก่อน

เครื่องเสมือนจะขึ้นอยู่กับ trits ( tri nary digit s ) แต่ละคำของเครื่องมีความกว้างสิบ trits ทำให้อยู่ในช่วงตั้งแต่ 0 ถึง 2222222222t (= 59048d) ตำแหน่งหน่วยความจำแต่ละตำแหน่งจะเก็บคำศัพท์เครื่องไว้ ที่อยู่นั้นมีความกว้างเครื่องหนึ่งคำ ทั้งข้อมูลและรหัสแชร์พื้นที่หน่วยความจำเท่ากัน

มีสามรีจิสเตอร์ซึ่งแต่ละคำจะมีหนึ่งคำเครื่องตอนแรก 0: รหัสลงทะเบียน C ซึ่งเป็นตัวชี้ไปยังคำสั่งที่กำลังจะถูกดำเนินการลงทะเบียนข้อมูล D ที่ใช้สำหรับการจัดการข้อมูลและการสะสม A ยังใช้หลาย คำแนะนำในการจัดการข้อมูล

หากคำสั่งในการดำเนินการไม่อยู่ในช่วง 33-126 การดำเนินการจะหยุด (ล่ามอ้างอิงหยุดทำงานในกรณีนี้เนื่องจากบั๊ก) มิฉะนั้นเพื่อพิจารณาคำสั่งจริงที่จะดำเนินการค่าที่ชี้ไปโดยการลงทะเบียน C จะถูกเพิ่มไปยังการลงทะเบียน C และผลหารด้วย 94 โดยนำส่วนที่เหลือ

นี่คือตารางคำแนะนำที่เป็นไปได้ทั้งหมดThe table

ขณะนี้เป็นรหัสที่เข้าใจได้ง่ายขึ้นและเป็นไปได้จริงที่จะบอกสิ่งที่เกิดขึ้นที่นั่นเราสามารถข้ามไปยังแนวคิดทั่วไปของสิ่งที่เกิดขึ้นที่นั่น

การเขียนโปรแกรม Malbolge นั้นไม่สำคัญเลยแม้แต่น้อย เมื่อมีการใช้การกระโดดจะต้องมีการถอดรหัสงานที่ต้องทำก่อนที่จะเรียกใช้งานรหัสนี้อีกครั้ง ทุกครั้งที่มีการดำเนินการคำสั่งมันจะเริ่มต้นทันทีหลังจากเข้ารหัสดังนั้นจึงไม่ทำงานในลักษณะนี้เหมือนที่เคยทำมาก่อน

เพื่อแสดงวิธีแก้ปัญหาให้ดูที่โปรแกรม Malbolge cat ปกติ:

jpoo*pjoooop*ojoopoo*ojoooooppjoivvv
o/i<iviv
i<vvvvvvvvvvvvv
oji

อย่างที่คุณเห็นในบรรทัดที่สองเรามี/และ<คำแนะนำเกี่ยวกับสิ่งที่ I / O การใช้ความจริงที่Cregister คือตัวชี้คำสั่งเราสามารถปรับเปลี่ยนได้โดยใช้iคำสั่งที่สร้างสาขาอย่างมีประสิทธิภาพ ก่อนที่สาขาจะเกิดขึ้นเราจำเป็นต้องถอดรหัสคำสั่งที่อ่านและเขียนเอาต์พุตไปและกลับจาก TTY รวมกับการกระโดดเพียงไม่กี่รอบ เนื่องจากไม่มีวิธีที่แท้จริงในการจัดเก็บค่าคงที่ได้อย่างมีประสิทธิภาพเราจึงจำเป็นต้องฝังคำแนะนำที่ไม่เกี่ยวข้องจำนวนมากและใช้ค่าของพวกเขาในการคำนวณค่าคงที่อื่น ๆ ที่จำเป็น (ใช้ข้อเท็จจริงที่ Malbolge ไม่แยกโปรแกรมและข้อมูล)

หมายเหตุ: ส่วนหนึ่งของคำตอบนี้ถูกนำมาจากวิกิพีเดีย Esolang หน้า Malbolge ใบอนุญาตภายใต้มอนส์ CC0 - การเชื่อมโยง

อาจเป็นไปได้ว่าคุณอาจต้องการตรวจสอบคำตอบอื่น ๆของฉันที่มีเมล็ดพันธุ์


15
ว้าว! คุณทำสิ่งนี้ได้อย่างไร คุณเขียนโปรแกรมใน Malbolge ได้อย่างไร (นี่เป็นคำถามที่จริงจังตามทาง)
MilkyWay90

39
วันที่มีคนเขียน Malbolge โปรแกรมที่คัดลอกอินพุตไปยังเอาต์พุตของมันคือวันที่ผมของฉันเปลี่ยนเป็นสีเขียวตามธรรมชาติ มันเป็นวันที่ช้างเป็นสีม่วงและอูฐบินไปและวัวก็สามารถผ่านสายตาของเข็มได้ ดูเหมือนว่าจะเกินว่า
อดัม

20
@ Adámอย่างน้อย 2 ปัจจัย
Shaggy

12
การได้ยิน Malbolge เป็นครั้งแรก แต่การอ่านเอกสารเหล่านั้นทั้งหมดที่ฉันคิดได้ก็คือ: แดงนี่เป็นคำตอบที่น่าประทับใจ เป็นไปได้ไหมที่จะอธิบายรหัสของคุณหรือเกินกว่าจะอธิบายได้? ;)
Kevin Cruijssen

24
+1 สำหรับ"มันกลายเป็นเรื่องเล็กน้อย"
Arnauld

88

brainfuck , 6 ไบต์

,[..,]

ลองออนไลน์!

ครั้งหนึ่งคำตอบที่แข่งขันได้จริงใน brainfuck :-) แค่อ่านจากอินพุตมาตรฐาน ( ,) จากนั้นก็วน[ซ้ำในขณะที่ตัวละครอ่านไม่เป็นศูนย์ ( ) เขียนตัวอักษรอ่านสองครั้ง ( ..) และในที่สุดก็อ่านตัวละครใหม่ ( ,) ก่อนที่จะกลับไปที่จุดเริ่มต้นของวง])

ทางเลือก 6 ไบต์ตอบ:

+[,..]

ลองออนไลน์!


10
มันต้องเกิดขึ้นบางครั้ง
AJFaraday

14
เมื่อได้รับคำสั่งจาก 8 ของ brainfuck สามารถโต้แย้งได้ว่าเป็น 2.25 ไบต์?
speedstyle

43

เมล็ดพันธุ์ , 6013 3942 3884 3865 3848 ไบต์

6 2686150228553910251590139707025615036563204497823963635717768129239771871066022173506550480510882628259267028226290577985584582829987099606110915656117177113555095646841841520224800333754793732176561479800611856258812006670385981709167679328497862503284773114717364645850756926464567857029605682209030697372493435852024478962025612141035167904456425050991742516020282696732660004824569723936406080643638019715421991278634074220365586727498681650073989748857985341022350116695714407041551609933358182688736747622670056818175549484918971558384479903673900409406866275258032866680967195428439907751537922194839977711106739550525066186108781580088916582559490041917035011328862266125578018990106393872489460844458091217404944194309597162769266585917996079831048944050703695352212652362891425728346891039020051565145149143668695374506752075410956647268061596926723805877631732070244839345640289062870487268706837056753112890753688530410829624567367052492603150395779619674714389456447573342335882718419424356991739625084740814435581409670174841935167450868967735568432921607395284483532735870628809137816139721467391760314297120583388009684979379888771619327969950939260709632318979448755571394507744993723267176377451465261335636767345281382139780890626858048062851714445255458413414708836044457819560626602471881203745677166851290194466534044374122781840150694963232713079984019097616802988558052961445185981197848860688635007868494303883280609553158126926303057368716954797175868772233997584782178460308584468311133667562020523260687787209651365697360075036255149184531675013585317549831215044187699501112214237282761452176427542227751840469500783022037518267131004723958694850409020207947539046371030202918430731468837057173037358435898981729128093138565524861044307737736772778645659866179416374742499528142506977571896833797572787168504674372995624869224644028121889021513694674680344413147327217671463636201883832593707987630471763158950694907193475270346642656464131212900528377257996057522592531063490286796434946290829640562975054259249630102041301990094261151488784971084438450904697283402436878185751193256803412549504172175692725366543545573099651580644132336272302990268431569623087644930350666119986012078396755208814027614451748455718916151950218835893255721018309717807161101069849247670957963270760531996609510342178009605381013854568528344071028665101709824510991652144229895556116304356971449229862349660751509158124118556805449346752918775201366378708970673708268140336609704879631200464020207189960217784283188350457711700181561855735903701439931161728546207607766764248018356183768557244013532032616392458312600465372655052565572757979232509950076857757257164261786986456779565081319671440867797151240096925123970490604003172676471092543424462070540303172987644037832692737644573481399927217285232015082118420498058022229538934735831710860610342762500071914715742707928060606416262583307855509796730058097681208691054336064995992598081644175617375019325706441005506100489323794725547244923204524790583484243672718647866979116309868261348266944902049457094368284266044502218232850494065571536043568039093446786891928597439310947971461490128765873399872574753055564655381318395939745692438909430171644009177696549501234738931977436030245682360974103741227416811200635596942701451202333113537361407624672328798572271366897755165037017879673502748767425083758652376018772700583221474572236166246539494675416322678094399996691972837962509574037110004298629947088012862552029152119412750923308070223808629424081676003170951500587426197322368913565250353332410276730344732325753114510178069340400741671217608323179698501977213623893949006870978691284571486316780769512681865771113879654002525802085758553029765815927252866913455193686303619992165147682671351400793392238437682055370542229871989802092530537034276944154276536658348210

ลองออนไลน์!


1
ฉันถึงขีด จำกัด การลงคะแนนรายวันของฉันแล้ว แต่ฉันจะโหวตได้ใน 2 ชั่วโมง
MilkyWay90

4
ฉันไม่สามารถเข้าใจสิ่งนี้ได้
AJFaraday

7
โอกาสใดที่คุณสามารถอธิบายได้ว่าคุณได้รับชิ้นนี้หรือไม่? คำอธิบายดังกล่าวจะรวมคำว่า 'เล็กน้อย' ที่จุดใด?
ouflak

1
@ อำพรางคราวนี้มันไม่รวมคำว่า 'เล็กน้อย' เพราะความท้าทายที่ต้องใช้ในการพลิกกลับ Mersenne Twister
Krzysztof Szewczyk

6
คุณกลับรายการ Mersenne Twister อย่างไร
MilkyWay90

31

เยลลี่ขนาด 1 ไบต์

โปรแกรมเต็มรูปแบบ

ż

ลองออนไลน์!


โอ้ฉันช้าเกินไป เพิ่งจะโพสต์
Adám

FWIW ฉันทราบว่านี่เป็นโปรแกรมเต็มรูปแบบเนื่องจากเป็น monadic Link มันยอมรับรายชื่อตัวละคร แต่คืนรายการรายการของตัวละคร - ดังนั้นจึงยอมรับสตริง Python เป็นอาร์กิวเมนต์และพิมพ์ผลลัพธ์ (เช่น 1 byter ของฉัน แม้ว่าอันนี้อาจจะถูกเพิ่มให้ทำงานเป็นลิงค์ ( ż`F) ในขณะที่ฉันไม่สามารถเชื่อได้)
Jonathan Allan

(Nick Kennedy ชี้ให้เห็นว่าฉันสามารถเชื่อมโยงกับ uneval, eval :))
Jonathan Allan

1
@JonathanAllan Pfffft, uneval-eval :)))
Mr. Xcoder

3
@Jakuje Jelly มีเพจรหัสของตัวเองดังนั้นอักขระ 256 ตัวในนั้นจึงถูกเข้ารหัสเป็น 1 ไบต์
Mr. Xcoder

25

ภาษาการเขียนโปรแกรมของเช็คสเปียร์ , 139 129 109 106 ไบต์

-3 ไบต์ขอบคุณ Jo King

N.Ajax,.Page,.Act I:.Scene I:.[Exeunt][Enter Ajax and Page]Ajax:Open mind.Speak thy.Speak thy.Let usAct I.

ลองออนไลน์!

แสดงคำเตือนและยุติด้วยข้อผิดพลาด จัดการกับมัน


1
@Jo King woah นี่เป็นการใช้ [Exeunt] ที่ฉลาดจริงๆ!
NieDzejkob

22

Haskell , 15 14 13 ไบต์

(>>=(<$"dd"))

ลองออนไลน์!

หรือชัดเจน:

\xs -> concatMap (\x -> map (const x) ['d','d']) xs

คำอธิบาย: รายการอยู่Monadใน Haskell และการใช้ตัวดำเนินการเชื่อม>>=คือ a เรียกconcatMapใช้งานฟังก์ชันที่รับองค์ประกอบและส่งคืนรายการในแต่ละองค์ประกอบของรายการจากนั้นทำการเชื่อมโยงรายการผลลัพธ์กับรายการขนาดใหญ่

ตอนนี้เราก็มีการสร้างฟังก์ชั่นที่ได้รับค่ากลับรายการของค่าที่สองซึ่งสามารถทำได้โดยการที่(<$"dd")ซึ่งสามารถอ่านเป็น "Take รายการ['d','d']และแทนที่ทุกองค์ประกอบที่มีข้อโต้แย้งของฟังก์ชั่นนี้. การ"dd"อาจจะ นิพจน์ใด ๆ ที่ส่งผลให้มีรายการองค์ประกอบสองอย่าง แต่นี่เป็นช่วงเวลาที่สั้นที่สุดที่ฉันสามารถทำได้


1
ใช้<$เป็นสิ่งที่ฉันไม่เคยคิดถึง
Mega Man

3
@ MegaMan Credit ไปที่ Laikoni ซึ่งให้คำแนะนำฉันแก่ผู้ท้าทาย codegolf อีกหนึ่งปีที่แล้วcodegolf.stackexchange.com/questions/6281/…
Sacchan

18

05AB1E , 2 ไบต์

ø˜ or øS  (both 05AB1E versions)
ζ˜ or ζS  (new 05AB1E version only)
€D or €Â  (new 05AB1E version only)
.ι        (new 05AB1E version only)
ºS        (new 05AB1E version only)
·S or xS  (legacy 05AB1E version only)
+S        (legacy 05AB1E version only) 

ตกลงฉันยอมแพ้ ฉันไม่สามารถหา 1 byter เพื่อแก้ไขปัญหานี้ โหลดของ 2 byters แม้ว่า ..

ลองø˜ออนไลน์หรือลองøSออนไลน์
ลองζ˜ออนไลน์หรือลองζSออนไลน์
ลอง€Dออนไลน์หรือ ลอง€Âออนไลน์
ลองออนไลน์
ลองºSออนไลน์
ลอง·Sออนไลน์หรือลองxSออนไลน์
ลอง+Sออนไลน์

I / O เป็นรายการของตัวละคร

คำอธิบาย:

ø    # Zip/transpose the (implicit) input-list with itself
     #  i.e. ["a","b","c"] → [["a","a"],["b","b"],["c","c"]]
 ˜   # Deep flatten it
     # OR
 S   # Convert it to a flattened list of characters
     # (which will be output implicitly as result)

โปรแกรมเดียวที่ทำงานเหมือนกันใน 05AB1E ทั้งสองเวอร์ชัน :)

ζ    # Zip/transpose the (implicit) input-list with the (implicit) input-list
     #  i.e. ["a","b","c"] → [["a","a"],["b","b"],["c","c"]]
 ˜   # Deep flatten it
     # OR
 S   # Convert it to a flattened list of characters
     # (which will be output implicitly as result)

เวอร์ชั่นนี้ใช้งานได้เหมือนกับเวอร์ชั่นด้านบนสำหรับเวอร์ชั่นใหม่ ในเวอร์ชั่นเก่าคุณจะต้องมีคู่ที่ชัดเจนก่อนจากนั้นคุณสามารถซิป / แปลงรหัสได้ เพียงแค่ζในรายการ 1D จะไม่ใช่ตัวเลือกในรุ่นดั้งเดิมของ 05AB1E

    # For each character in the (implicit) input-list,
     # keeping all values on the stack into the resulting list:
 D   # Duplicate it
     # OR
 Â   # Bifurcate it (short for duplicate & reverse copy)
     # (which will be output implicitly as result)

ในเวอร์ชันใหม่ของ 05AB1E จะเก็บค่าทั้งหมดไว้ในสแต็กลงในรายการผลลัพธ์เมื่อทำแผนที่ ในขณะที่รุ่นดั้งเดิมของ 05AB1E จะเก็บค่าสูงสุดไว้เท่านั้น นี่คือเหตุผลที่สิ่งเหล่านี้ทำงานเฉพาะในรุ่นใหม่

   # Interleave the (implicit) input-list with the (implicit) input-list
     # (which will be output implicitly as result)

สิ่งปลูกสร้างนี้ยังไม่ได้มีในรุ่นดั้งเดิมของ 05AB1E

º    # Mirror each value in the (implicit) input-list
     #  i.e. ["a","b","c"] → ["aa","bb","cc"]
 S   # Convert it to a flattened list of characters
     # (which will be output implicitly as result)

ในรุ่นมรดกของ 05AB1E ที่ builtin กระจกแนวนอนจะแทน ºอย่างไรก็ตาม∞Sไม่สามารถใช้งานได้ในเวอร์ชันดั้งเดิมเนื่องจากจะแปลงรายการเป็นสตริงที่คั่นด้วย newline ก่อนที่จะทำมิเรอร์ให้สมบูรณ์ ( ลองใช้ที่นี่ ) หลังจากนั้นSจะรวมบรรทัดใหม่เหล่านี้ด้วย

·    # Double each character
     # OR
x    # Double each character (without popping)
     #  i.e. ["a","b","c"] → ["aa","bb","cc"]
 S   # Convert it to a flattened list of characters
     # (which will be output implicitly as result)

2*ดับเบิลสั้นสำหรับ ในรุ่นใหม่ของ 05AB1E ให้สร้างใน Elixir ซึ่งจะทำงานได้กับค่าตัวเลขเท่านั้น รุ่นเก่าของ 05AB1E นั้นสร้างขึ้นใน Python ดังนั้นจึงใช้2*งานได้เหมือนกันและใช้อักขระซ้ำ

+    # Append all characters in the (implicit) input-list at the same indices 
     # with the characters of the (implicit) input-list
     #  i.e. ["a","b","c"] → ["aa","bb","cc"]
 S   # Convert it to a flattened list of characters
     # (which will be output implicitly as result)

อีกครั้งเนื่องจากรุ่นดั้งเดิมของ 05AB1E ถูกสร้างขึ้นใน Python ให้"a"+"a"ผลลัพธ์ใน"aa"ขณะที่+ไม่สามารถใช้ผนวกสตริงในเวอร์ชันใหม่ได้ (PS: มีภาคผนวกสำหรับสตริงที่ใช้งานได้ในทั้งสองเวอร์ชันซึ่งก็คือ«แต่เมื่อให้อาร์กิวเมนต์สองรายการมันจะต่อกันเข้าด้วยกันแทนที่จะรวมแต่ละสตริงที่ดัชนีเดียวกันเช่นโปรแกรมด้านบน ( ลองที่นี่ ))


นอกจากนี้ยังมีζ˜05AB1E ที่ทันสมัย
Grimmy

@Grimy ไม่ทราบว่าไม่ได้ทำงานในเวอร์ชันดั้งเดิม ฉันคิดว่ามันเหมือนกันø˜ดังนั้นฉันก็เลยไม่ต้องเพิ่มมันเข้าไปด้วย ฉันได้เพิ่มมัน (รวมทั้งøS/ ζS/ xS)
Kevin Cruijssen

17

Pyramid Scheme , 229 218 213 ไบต์

    ^
   /l\
  /oop\
 ^-----^
 -^   ^-
 /[\ /]\
^---^---^
-^ / \  -^
^-/out\ / \
-^-----/set\
 -^   ^-----^
  -^  -    /+\
  / \     ^---^
 /arg\   /1\  -
^-----^  ---
-^    -
 -^
 / \
/arg\
-----^
    /1\
    ---

ลองออนไลน์!

นี่อาจสั้นกว่านี้อย่างแน่นอน อินพุตถูกใช้ผ่านอาร์กิวเมนต์บรรทัดรับคำสั่ง นี่เท่ากับ:

str = input()
n = 0
while str[n]:
  print(str[n]*2)
  n += 1 

มีข้อแม้เล็กน้อยเช่นการพิมพ์จริงที่จัดการทั้งสภาพลูปและตัวลูป

ทางเลือก 215 byter:

     ^
    /l\
   /oop\
  ^-----^
 /[\    -^
^---^   / \
-^ ^-^ /set\
^- -^-^-----^
-^ / \-    /+\
^-/out\   ^---^
-^-----  /1\  -
 -^      ---
  -^
  / \
 /arg\
^-----^
-^    -
 -^
 / \
/arg\
-----^
    /1\
    ---

ลองออนไลน์!


3
setสามารถขยับขึ้นและซ้ายโดยไม่ต้องยุ่งกับอะไร ลองออนไลน์!
Khuldraeseth na'Barya

Pyramid Cultมาที่ PPCG!
Val

15

เยลลี่ขนาด 1 ไบต์

โปรแกรมเต็มรูปแบบการพิมพ์ผล

ลองออนไลน์!

อย่างไร?

ใช้คุณลักษณะข้อผิดพลาด ...
อะตอม "คู่" ของวุ้นถูกนำมาใช้กับ Python *และมัน vectorises ในขณะที่รายชื่อตัวละครของวุ้น จนกว่าเราจะรู้ว่าใน Python 'blah'*2='blahblah'...

Ḥ - Main link: list of characters (as parsed from an argument as a Python string)
  -                       e.g. ['A','b','b','a']
Ḥ - double (vectorises)        ['AA','bb','bb','aa']
  - implicit, smashing print     AAbbbbaa

หากคุณต้องการสร้างลิงค์แบบ monadic (แทนที่จะเป็นแบบเต็มโปรแกรม) คุณสามารถใช้ḤṾV
Nick Kennedy

อ่าฉันไม่รู้ว่าทำงานได้ดีเลย!
Jonathan Allan

ดูเหมือนว่าฉันจะเป็นอักขระสามไบต์: $ echo -n "Ḥ" | hexdump -C<newline>00000000 e1 b8 a4 |...|
Jakuje

1
@Jakuje รหัสเป็นหนึ่งไบต์af, เป็นเพียงการแสดงออกของไบต์ที่ดูเยลลี่ของรหัสหน้า (ยังเชื่อมโยงในส่วนหัวของการโพสต์)
Jonathan Allan

15

เยลลี่ขนาด 1 ไบต์

ż

ลองออนไลน์!

ให้อภัยความไม่มีประสบการณ์ของฉันฉันเพิ่งเริ่มต้นกับเจลลี่ สิ่งที่ฉันเชื่อว่าเกิดขึ้นก็คือเราได้กำหนดห่วงโซ่ย้อมซึ่งถืออาร์กิวเมนต์เดียวเป็นทั้งอาร์กิวเมนต์ซ้ายและขวา ในกรณีนี้เชนประกอบด้วย "zip; interleave x และ y" ซึ่งสอดแทรกสตริงอินพุตด้วยตัวเอง

มีคนโพสต์วิธีแก้ปัญหาวุ้นขนาด 1 ไบต์แล้วฉันหวังว่าจะไม่เสียมารยาทในการโพสต์ของฉัน


7
ยินดีต้อนรับสู่เว็บไซต์! เป็นการดีที่จะโพสต์คำตอบที่ผูกกับคำตอบที่มีอยู่โดยเฉพาะอย่างยิ่งหากคำตอบของคุณมีคำอธิบาย
ข้าวสาลี Wizard

15

งูหลาม 34 25 ไบต์

lambda i:sum(zip(i,i),())

ลองออนไลน์! อีกคนหนึ่งที่ส่งกลับสตริงแทนรายการของตัวละคร:

for i in input():print(i,end=i)
for i in input():               asking for the input, and doing a 
                                for loop for every char in the string.
                 print(i,end=i) print the character, and then close 
                                the line with the same character.

ลองออนไลน์!


4
lambda i:sum(zip(i,i),())ควรทำเพื่อ -9
Mr. Xcoder

@ Mr.Xcoder นี่จะส่งคืนรายการอักขระแทนที่จะเป็นสตริง ต้นฉบับสามารถปรับปรุงได้ 3 ไบต์แม้ว่า:for i in input():print(i,end=i)
โม่

lambda i:''.join(c*2 for c in i)32 ไบต์ แต่ส่งคืนสตริงและไม่ใช่รายการ
Gábor Fekete

ยังใช้งานได้กับ 31 ไบต์ :)lambda i:''.join(c*2for c in i)
movatica

12

PowerShell , 29 23 21 ไบต์

-6 bytes ขอบคุณ Andrei Odegov
-2 bytes ขอบคุณ mazzy

-join($args|%{$_+$_})

ลองออนไลน์!

รับอินพุตผ่านการกระจายสัญญาณทำให้มันเป็นอาร์เรย์ของตัวอักษร


2
-6 ไบต์
Andrei Odegov

1
คุณคิดยังไงเกี่ยวกับการกระเด็น? ลองออนไลน์!
mazzy

11

8088 Assembly, IBM PC DOS, 16 10 ไบต์

การxxdถ่ายโอนข้อมูลไบต์ประกอบ

00000000: b401 cd21 b40e cd10 ebf6                 ...!......

รายการที่ยังไม่ได้ประกอบ:

B4 01       MOV  AH, 01H        ; DOS read char from STDIN (AH=01)
CD 21       INT  21H            ; read char into AL (echoes input)
B4 0E       MOV  AH, 0EH        ; BIOS write char to console
CD 10       INT  10H            ; write char to console 
EB F6       JMP  -10            ; continue looping until break

PC DOS แบบสแตนด์อโลน อินพุตจากSTDINเอาต์พุตไปยังคอนโซล

อินพุตคอนโซลแบบโต้ตอบ:

ป้อนคำอธิบายรูปภาพที่นี่

อินพุตตามท่อ:

ป้อนคำอธิบายรูปภาพที่นี่

คำตอบ16 ไบต์เดิม:

การxxdถ่ายโอนข้อมูลไบต์ประกอบ

00000000: d1ee ad8a c849 acb4 0ecd 10cd 10e2 f7c3  .....I..........

รายการที่ยังไม่ได้ประกอบ:

D1 EE       SHR  SI, 1          ; point SI to DOS PSP (080H) 
AD          LODSW               ; load input length into AL 
48          DEC  AX             ; remove leading space from length counter 
8A C8       MOV  CL, AL         ; move length to loop counter 
        C_LOOP: 
AC          LODSB               ; load next char into AL 
B4 0E       MOV  AH, 0EH        ; PC BIOS tty output function 
CD 10       INT  10H            ; write char to console 
CD 10       INT  10H            ; write char to console again
E2 F7       LOOP C_LOOP         ; continue looping through chars 
C3          RET                 ; exit to DOS

PC DOS แบบสแตนด์อโลน อินพุตผ่านบรรทัดรับคำสั่งเอาต์พุตไปยังคอนโซล

ป้อนคำอธิบายรูปภาพที่นี่


ใช้ XCHG AX, CX แทน MOV CL, AL เพื่อบันทึกไบต์
NieDzejkob

1
@NieDzejkob ขอบคุณ! ปัญหาเดียวที่มีคือLODSWกำลังจะนำพื้นที่ชั้นนำ ( 20H) 81Hเข้ามาAHซึ่งแน่นอนว่าจะทำให้เลอะเทอะLOOPหากอยู่ในCH... คนเกียจคร้าน
640KB


10

JavaScript (Node.js)ขนาด 22 ไบต์

รับอินพุตเป็นอาร์เรย์ของอักขระ

s=>s.flatMap(c=>[c,c])

ลองออนไลน์!


JavaScript (ES6), 26 ไบต์

รับอินพุตเป็นสตริง

s=>s.replace(/./gs,c=>c+c)

ลองออนไลน์!

รุ่นสำรองที่แนะนำโดย @PabloLozano:

s=>s.replace(/./gs,'$&$&')

ลองออนไลน์!

การทำแบบวนซ้ำยังทำได้นานแค่ไหน:

f=([c,...s])=>c?c+c+f(s):s

ลองออนไลน์!


s=>s.replace(/./gs,c=>c+c)เพื่อให้.ตรงกับบรรทัดใหม่
Nahuel Fouilleul

@NahuelFouilleul จับได้ดี ขอบคุณ!
Arnauld

1
@KevinCruijssen สิ่งที่join('')ควรระวัง ในความคิดที่สองนั่นอาจเป็นการเพิ่มเอาท์พุทด้วยวิธีที่ไม่ได้มาตรฐานดังนั้นอาจไม่ถูกต้อง
Oliver

1
@Oliver ฉันคิดว่าไม่ถูกต้อง 05AB1E ของฉันจะมีโซลูชัน 1 ไบต์บางอย่างในกรณีนี้ I / O เริ่มต้นสำหรับสตริงมีทั้ง .. สตริงหรือรายการ / อาร์เรย์ / สตรีมของอักขระ / สตริงอักขระเดี่ยว ["aa","bb","cc"]เป็นรายการของสตริงอย่างไรก็ตามสตริงหรือรายการอักขระของตัวเอง การเพิ่มการเข้าร่วมหรือทำให้แบนลงในรายการของตัวละครนั้นถูกต้อง แต่จะต้องนับรวมไปยังจำนวนไบต์
Kevin Cruijssen

1
@KevinCruijssen ใช่ฉันเห็นด้วย :-)
Oliver




6

C (gcc) , 40 ไบต์

f(s,t)char*s,*t;{while(*t++=*t++=*s++);}

ลองออนไลน์!

สมมติว่าtเป็นบัฟเฟอร์ที่มีขนาดใหญ่พอที่จะเก็บเอาท์พุท

อาจไม่เป็นไปตามมาตรฐาน แต่สามารถใช้งานได้กับ TIO


6

J , 6 3 ไบต์

-3 ไบต์ขอบคุณ Richard Donovan

2#]

ลองออนไลน์!

K (oK) , 8 4 ไบต์

-4 ไบต์ต้องขอบคุณ ngn!

{2}#

ลองออนไลน์!


1
เลนไม่ได้เพียง 2 # สำหรับไบต์ที่สองในขณะที่ ...
ริชาร์ดโดโนแวน

1
2 # 'qwerty' ===> 'qqwweerrttyy'
Richard Donovan

@ Richard Donovan ใช่ มันได้ผล!
Galen Ivanov

ในทำนองเดียวกันใน k:{2}#
ngn

@ngn อืมฉันไม่รู้เหมือนกัน! ขอขอบคุณ!
Galen Ivanov


5

Haskellขนาด 15 ไบต์

ที่นี่(:)<*>pureใช้เวลาโต้เถียงและส่งกลับรายการที่มีเรื่องนี้เป็นครั้งที่สอง จากนั้น>>=แมปฟังก์ชันนี้กับทุกรายการของรายการอินพุต (ซึ่งเป็นสตริงในกรณีของเรา) และทำให้ผลลัพธ์ (รายการรายการ) แบนกลับไปที่รายการ

(>>=(:)<*>pure)

ลองออนไลน์!


มีคำตอบแรกเหมือนกันรักการใช้ combinator S
โคล

@cole ฉันเห็นคำตอบที่สั้นกว่าของคุณเมื่อฉันกำลังจะส่งรายการนี้ - แต่ฉันโพสต์ไว้แล้วเพราะฉันคิดว่ามันช่างสง่างาม :)
ข้อบกพร่อง


5

เขาวงกต 12 ไบต์

",)@
" (
..:

ลองออนไลน์!

ฉันเพิ่งค้นพบภาษานี้ดังนั้นคำตอบนี้อาจได้รับการปรับปรุงให้ดีขึ้นอย่างเห็นได้ชัด ...


1
ทำเสร็จแล้วความคิดแรกของฉันเหมือนเดิม ( ","แทนที่จะเป็นเท่านั้น"",) ฉันได้จัดการสิบเอ็ดตอนนี้ - อาจมีสิบหรือดีกว่าได้หรือไม่
Jonathan Allan


5

เรติน่า 4 ไบต์


$<&

ลองออนไลน์!

จับคู่สตริงว่าง (เช่นตำแหน่งก่อน / หลังอักขระแต่ละตัว) และแทรกสตริงระหว่างสิ่งนี้และการแข่งขันก่อนหน้า (ซึ่งมักจะเป็นอักขระก่อนหน้านี้เสมอยกเว้นสำหรับการแข่งขันครั้งแรกที่ไม่มีสิ่งใด)


5

Java 8, 27 ไบต์

s->s.replaceAll(".","$0$0")

ลองออนไลน์

คำตอบเก่า 31 ไบต์ก่อนที่กฎจะเปลี่ยนแปลง:

s->s.replaceAll("(?s).","$0$0")

หมายเหตุ: คำแนะนำของ@EmbodimentOfIgnorance ( \n|.แทนที่จะ(?s).ถูกเปลี่ยนกลับเนื่องจากมันล้มเหลวหากข้อมูลมี\rอยู่ขอบคุณสำหรับการรายงานไปยัง@ OlivierGrégoire @

ลองออนไลน์

คำอธิบาย:

s->                             // Method with String as both parameter and return-type
  s.replaceAll("(?s).","$0$0")  //  Regex-replace all matches with the replacement
                                //  And return the changed String as result

คำอธิบาย Regex:

(?s).                           // Match:
(?s)                            //  Enable DOTALL mode so newlines and carriage returns
                                //  are treated as literal
    .                           //  A single character

$0$0                            // Replacement:
$0                              //  All character(s) found in the match
  $0                            //  And again all character(s) found in the match

1
(?s).สามารถแทนที่ด้วย\n|.
ศูนย์รวมของความไม่รู้

@EmbodimentofIgnorance อ่าแน่นอน ขอบคุณ! :)
Kevin Cruijssen

รุ่นไม่ทำงานอย่างถูกต้องด้วยการป้อนข้อมูล\n|. รุ่นทำงานอย่างถูกต้องด้วยแม้ว่า "\r"(?s).\r
Olivier Grégoire

ความต้องการตอนนี้บอกว่า ASCI อยู่ในช่วง 32-126 ดังนั้นคุณสามารถเล่นกอล์ฟถึง 30 ด้วยทางลัดของ @ EmbodimentofIgnorance
Olivier Grégoire

1
อ๊ะบางครั้งฉันลืมไปว่า\nสามารถพิมพ์ได้ แต่ไม่ใช่ส่วนหนึ่งของช่วงที่พิมพ์ได้ของ ASCII
Olivier Grégoire

4

Pyth , 2 ไบต์

.i

ลองออนไลน์!

.interleaves อินพุตสองชุดเข้าด้วยกัน อินพุตนั้นเป็นนัยดังนั้นเวอร์ชัน 'เต็ม' ของโปรแกรมนี้จะเป็น.iQQโดยที่Qอินพุตของโปรแกรมอยู่ที่ไหน


4

MarioLANG , 23 20 17 ไบต์

>,
"+
.[
.<
!-
#=

ลองออนไลน์!

ซึ่งแตกต่างจาก brainfuck, MarioLANG คืนค่า -1 บน EOF ดังนั้นเราต้องเพิ่มค่าที่อ่านก่อนที่จะเปรียบเทียบกับศูนย์แล้วลดลงก่อนที่จะพิมพ์ นี่อาจเป็นคำตอบที่สั้นที่สุดใน MarioLANG


4

Brain-Flak , 48 ไบต์

([]){{}({}<>)<>([])}{}<>([]){{}(({}<>))<>([])}<>

ลองออนไลน์!

รหัสนี้มีสองส่วนหลัก อันแรกเพิ่งย้อนกลับสตริง:

([]){{}({}<>)<>([])}{}<>

ที่สองเกือบจะเหมือนกันมันกลับสตริงและคู่ตัวละครในสถานที่

([]){{}(({}<>))<>([])}{}<>

เหตุผลที่เราต้องย้อนกลับสิ่งต่าง ๆ คือเราต้องสัมผัสทุกองค์ประกอบของสตริงเพื่อสร้างผลลัพธ์ เนื่องจาก Brain-Flak ใช้รูปแบบสแต็คที่สัมผัสตัวละครแต่ละตัวซึ่งหมายถึงการเปิดองค์ประกอบทั้งหมดและผลักพวกมันออกมา เนื่องจากลักษณะ FIFO ของสแต็กหมายความว่าในแต่ละครั้งที่ทำสิ่งนี้คุณจะย้อนกลับสตริง ปัญหาการย้อนกลับไม่ปรากฏใน Brain-Flueue ด้านล่าง

Brain-Flueueขนาด 28 ไบต์

([]<>){({}[()])<>(({}))<>}<>

ลองออนไลน์!

เนื่องจากคิวเป็นสิ่งสุดท้ายที่เราต้องทำใน Brain-Flueue คือการวนซ้ำผ่านสายอักขระทั้งหมดสองเท่าของตัวละครทุกตัว อย่างไรก็ตามสิ่งนี้จะทำให้ยากในการวนซ้ำทั้งสแต็ก ใน Brain-Flak เราสามารถไปได้จนกว่าความสูงของสแต็กจะเป็นศูนย์อย่างไรก็ตามด้วยคิวการผลักสิ่งที่วางไว้ที่ด้านล่างของคิวจะทำให้สูญเสียมันไป แต่เราใช้คิวที่สองเพื่อติดตามจำนวนการดำเนินการที่เราต้องการ สิ่งนี้ทำให้เป็นห่วงหลักดูเหมือนว่า:

([]<>){({}[()])<>...<>}<>

ด้วยเนื้อหาที่เป็นน้อย

(({}))

เพื่อความสนุกคำตอบทั้งสองนี้อาจสั้นลงได้มากหากไม่มีอินพุตเป็นโมฆะในอินพุต (ค่า ascii เป็นศูนย์)

Brain-Flakขนาด 26 ไบต์

{({}<>)<>}<>{(({}<>))<>}<>

ลองออนไลน์!

Brain-Flueueขนาด 14 ไบต์

{(({}<>))<>}<>

ลองออนไลน์!


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.