พิมพ์สำรับไพ่ที่สับแล้ว


23

อินพุต

ไม่มี

เอาท์พุต

52 ใบ ไม่มีการซ้ำซ้อน การ์ดจะแสดงเป็นอักขระ Unicode เช่น🂹

ตัวเข้ารหัส Unicodeทำตามรูปแบบต่อไปนี้:

  • 1F0ตัวเลขสามตัวแรกเป็น
  • หลักต่อไปคือA, B, CหรือDสำหรับจอบหัวใจเพชรและคลับตามลำดับ
  • ตัวเลขถัดไปคือ1ผ่านCและEสำหรับหมายเลข / การ์ดหน้าต่างๆ 1เป็นเอซ2- Aบัตรจำนวน, และB, DและEเป็นแจ็คราชินีและพระมหากษัตริย์ตามลำดับ ( Cคืออัศวินซึ่งไม่ได้อยู่ในสำรับส่วนใหญ่)

ตัวอย่างผลลัพธ์:

🂶🃁🃛🃎🂧🂵🃗🂦🂽🂹🂣🃊🃚🂲🂡🂥🂷🃄🃃🃞🂺🂭🃑🃙🂪🃖🂳🃘🃒🂻🃆🂮🃍🂱🂴🃋🂸🃈🃅🃂🂨🃓🃉🂾🃇🂩🂢🂫🃔🃕 🂤🃝

กฎ:

  • นี่คือรหัสกอล์ฟคำตอบที่สั้นที่สุดชนะ
  • ช่องว่างที่ต้องห้ามนั้นเป็นสิ่งต้องห้าม
  • เด็คของคุณต้องถูกสุ่มจริง ๆ หากเรียกใช้ 20 ครั้งจะต้องสร้างเอาต์พุตแบบสุ่ม 20 รายการ (และมีแนวโน้มมากที่สุด)

บันทึก

ถ้าคุณจะเห็นกล่องติดตั้งแบบอักษร DejaVu


2
สามารถมีช่องว่างระหว่างตัวละครแต่ละตัวได้หรือไม่?
มนุษย์โดยรวม

3
ฉันคิดว่าคุณหมายความว่ามันควรจะสุ่มและการเรียงสับเปลี่ยนทั้งหมดไม่ควรมีความน่าจะเป็นเกิดขึ้นเป็นศูนย์
Notts90

4
ใครอีกที่เห็นพวงของกล่อง?
SuperJedi224

1
@Mendeleev คุณควรโพสต์คำเตือนว่าการดาวน์โหลดนั้นเกือบกิกะไบต์!
ก๋วยเตี๋ยว 9

2
หากคุณเห็นเฉพาะกล่องให้ติดตั้งแบบอักษร Noto ของ Google ใช่ฉันไม่สามารถทำเช่นนั้นในโทรศัพท์ของฉัน ...
เดนนิส

คำตอบ:


9

เยลลี่ ,  25 23  21 ไบต์

62R%⁴g180<11T+“¢¬⁷’ẊỌ

ลิงก์ niladic ที่ส่งคืนรายการอักขระหรือโปรแกรมเต็มรูปแบบที่พิมพ์สำรับสับ

ลองออนไลน์!

อย่างไร?

62R%⁴g180<11T+“¢¬⁷’ẊỌ - Main link: no arguments
62                    - literal 62
  R                   - range(62) -> [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31, 32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47, 48,49,50,51,52,53,54,55,56,57,58,59,60,61,62]
    ⁴                 - literal 16
   %                  - modulo    -> [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,  0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,  0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,  0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14]
      180             - literal 180
     g                - G.C.D.    -> [1,2,3,4,5,6,1,4,9,10, 1,12, 1, 2,15,180, 1, 2, 3, 4, 5, 6, 1, 4, 9,10, 1,12, 1, 2,15,180, 1, 2, 3, 4, 5, 6, 1, 4, 9,10, 1,12, 1, 2,15,180, 1, 2, 3, 4, 5, 6, 1, 4, 9,10, 1,12, 1, 2]
          11          - literal 11
         <            - less than?-> [1,1,1,1,1,1,1,1,1, 1, 1, 0, 1, 1, 0,  0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0,  0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0,  0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]
            T         - truthy    -> [1,2,3,4,5,6,7,8,9,10,11,   13,14,       17,18,19,20,21,22,23,24,25,26,27,   29,30,       33,34,35,36,37,38,39,40,41,42,43,   45,46,       49,50,51,52,53,54,55,56,57,58,59,   61,62]
              “¢¬⁷’   - base 250 number 127136
             +        - addition (vectorises) -> card character ordinals
                   Ẋ  - shuffle the list
                    Ọ - convert to characters
                      - full program has an implicit print

4
ทำไมเจลลี่ถึงใช้เวทมนตร์นี้เสมอ?
Gryphon - Reinstate Monica

8

JavaScript (ES6), 107 106 108 ไบต์

a=[]
for(S of'ABCD')for(N of'123456789ABDE')a.splice(Math.random()*-~a.length,0,eval(`'\\u\{1F0${S+N}}'`))
a

-1 ไบต์ขอบคุณ@nderscore


JavaScript (ES6), 120 119 121 ไบต์

รุ่นก่อนหน้า

a=[],[...'ABCD'].map(S=>[...'123456789ABCE'].map(N=>a.splice(Math.random()*-~a.length|0,0,eval("'\\u\{1F0"+S+N+"}'")))),a

โอ้โหไม่เคยเห็น[...'ABCD']มาก่อน ช่างยอดเยี่ยม :)
Steve Bennett

@SteveBennett แน่นอน! เป็นเรื่องที่ดีที่สายอักขระสามารถพูดซ้ำได้โดยตัวละคร :)
darrylyeo

"ABCD".map(...)แต่คุณก็ยังไม่สามารถทำสิ่งที่ชอบ ฉันแน่ใจว่ามีเหตุผลที่สมเหตุสมผลว่าเป็นอย่างนั้น
Steve Bennett

@SteveBennett ใช่ฉันคิดว่ามันเป็นเพราะมันไม่ชัดเจนว่าวิธีการเช่นนี้จะส่งกลับสตริงหรืออาร์เรย์
darrylyeo

1
เป็นคนที่ดีมาก ฉันใช้เสรีภาพในการปรับเปลี่ยนตัวอย่างเพื่อให้แสดงผลกราฟิกมากขึ้น แต่อย่าลังเลที่จะย้อนกลับ
Arnauld

7

Python 3 ,  106  94 ไบต์

-5 ไบต์ขอบคุณ musicman523 (1. ใช้sample(...,52)เป็นแบบอินไลน์เทียบเท่ากับshuffle[ขอบคุณโดยสิ้นเชิงกับมนุษย์]; 2. ใช้~v&2แทนv%4<2; เพิ่มอีก 1 ไบต์เนื่องจากพื้นที่อาจถูกลบ)

from random import*
print(*sample([chr(v+127137)for v in range(63)if~v&2or~v%16>4],52),sep='')

ลองออนไลน์!


2
ดีฉันก็ไม่สามารถที่จะได้รับการแก้ปัญหาหลามของตัวเองใด ๆ ดีกว่า แต่ผมมีคุณลงไป 97 ใช้สวิตช์ totallyhuman sampleไป ลองออนไลน์!
musicman523

1
นอกจากนี้คุณยังสามารถเปลี่ยนv%4<2เพื่อ~v&2ที่จะประหยัดมากขึ้นหนึ่งไบต์
musicman523

ทำได้ดีมาก! ฉันคิดว่าบางทีrandomฟังก์ชั่นอื่นอาจช่วยได้ ไบต์อื่นบนสุดเท่าที่or ~...จะเป็นor~...ได้
Jonathan Allan

6

05AB1E , 22 21 ไบต์

ที่บันทึกไว้ 1 ขอบคุณไบต์carusocomputing

…1F0A4£14L13KhJâ«Hç.r

ลองออนไลน์!

คำอธิบาย

…1F0                    # push the string "1F0"
    A4£                 # push the string "abcd"
       14L              # push range [1 ... 14]
          13K           # remove 13
             h          # convert to hexadecimal
              J         # join to string "123456789ABCE"
               â        # cartesian product
                «       # prepend the string to each char in the list
                 H      # convert to decimal
                  ç     # get the chars with those code points
                   .r   # randomize

1
…1F0A4£14L13KhJâ«Hç.rfor 21 bytes (แก้ไขแล้วเพราะฉันลืมลบอัศวิน) ช่วยผูกเยลลี่ให้คุณ
Magic Octopus Urn

@carusocomputing: ความคิดที่ดีที่จะทำคาร์ทีเซียนก่อนที่จะเรียงต่อกันเพื่อให้เราสามารถข้ามแยก ขอบคุณ!
Emigna

6

Bash + coreutils, 56 ไบต์

printf %b\\n \\U1F0{A..D}{{1..9},A,B,D,E}|shuf|tr -d \\n

เราใช้printfในการเขียนการ์ดแต่ละใบในสายของตัวเองสับเปลี่ยนสายแล้วเชื่อมต่อทุกบรรทัดโดยการลบตัวอักษรขึ้นบรรทัดใหม่

โปรดทราบว่าแม้ว่าprintfคำสั่งcoreutils จะต้องการตัวเลขฐานสิบหก 8 หลักหลังจาก\Uนั้น Bash ในตัวprintfช่วยให้เราละเว้นค่าศูนย์นำหน้า


ฉันไปได้ไกลecho 16iF09F8{2A,2B,38,39}{{1..9},A,B,D,E}0AP|dc|shuf|tr -d \\nแต่คุณดีกว่า %bผมไม่ทราบเกี่ยวกับ
บาดเจ็บทางระบบดิจิตอล

1
@Digital - ทั้งฉันไม่ได้จนกว่าจะเขียนคำตอบนี้!
Toby Speight

3

Python 3 , 112 ไบต์

from random import*
*a,=map(chr,range(127136,127200))
del a[::16],a[::-15],a[11::14]
shuffle(a)
print(*a,sep='')

ลองออนไลน์!


คุณช่วยอธิบายความมหัศจรรย์ที่เกิดขึ้นในแถลงการณ์เดลได้หรือไม่? ฉันพยายามคิดออกโดยแบ่งมันออกเป็นสามงบต่อเนื่อง แต่ฉันท้ายลบรายการที่ไม่ถูกต้องในรายการ ตัวอย่างเช่น [:: 16] ให้การ์ดหนึ่งใบกับยูนิโค้ดที่ไม่ตีความสามใบ
CCB60

delคำสั่งไม่ทำลายลงตามลำดับจากซ้ายไปขวา องค์ประกอบแรกของa[::16]คือ U + 1F0A0 PLAYING CARD BACK ซึ่งควรจะลบทิ้ง นอกจากนี้เรายังจำเป็นต้องลบอัศวินและโจ๊กเกอร์การ์ดที่จะติดอยู่ในระหว่างปกติ 52. ดูen.wikipedia.org/wiki/...
Anders Kaseorg

3

Python 3 , 107 ไบต์

บันทึก 6 ไบต์ด้วย @Totallyhuman และ 3 ขอบคุณ @ @ CCB60!

from random import*
print(*sample([chr(int('1F0'+a+b,16))for a in'ABCD'for b in'123456789ABDE'],52),sep='')

ลองออนไลน์!


Golfed มันเล็กน้อย สิ่งนี้จะถูกต้องก็ต่อเมื่ออนุญาตให้เว้นวรรคเป็นตัวคั่นได้
มนุษย์โดยรวม

@tallyallyhuman การเพิ่ม,sep=''แก้ไขช่องว่างแน่นอน - แต่ทำให้ 112 bytes
vroomfondel

ฉันลืมไปแล้วrandom.sample! ฉันจะให้ OP ตัดสินใจเกี่ยวกับช่องว่าง ฉันสามารถเพิ่ม,sep=''เพื่อกำจัดพวกเขาและยังคงบันทึก 6 ไบต์
musicman523

chr (int (f'0x1F0 {a} {b} ', 16)) สามารถย่อให้สั้นลงได้ 3 ไบต์ถึง chr (int (' 0x1F0 '+ a + b, 16))
CCB60

@ CCB60 ฉันเป็นคนโง่ จับได้ดี
musicman523

3

PHP > = 7, 102 ไบต์

for(;$i++<64;)in_array(($c=127136+$i)%16,[0,12,15])?:$q[]=IntlChar::chr($c);shuffle($q);echo join($q);

ไม่มีล่ามออนไลน์สำหรับIntlChar :: chrวิธี

PHP , 112 ไบต์

for(;$n++<4;shuffle($r))for($i=0;$i++<14;)$i==12?:$r[]=pack("c*",240,159,131-($n>2),$n*16+112+$i);echo join($r);

ลองออนไลน์!

PHP , 116 ไบต์

for(;$c=ab89[$n++];shuffle($r))for($i=0;$i++<14;)$i==12?:$r[]=hex2bin(f09f8.(2+($n>2)).$c.dechex($i));echo join($r);

ลองออนไลน์!

PHP, 121 ไบต์

for(;$c=ABCD[$n++];shuffle($r))for($i=0;$i++<14;)$i==12?:$r[]=json_decode('"\ud83c\udc'.$c.dechex($i).'"');echo join($r);

ลองออนไลน์!


3

APL (Dyalog) , 40 38 ไบต์

วิธีการของ Jonathan Allan

UCS((11>18016|⍳62)/127136+⍳62)[?⍨52]

(... )ในอาเรย์ต่อไปนี้

⍳62 จำนวนเต็ม 62 ตัวแรก

127136+ เพิ่ม 127136 ลงในนั้น

(... )/ กรองด้วยบูลีน

  ⍳62 62 จำนวนเต็มแรก

  16| โมดูลัส 16

  180∨ GCD จาก 180 และนั่น

  11> ไม่ว่าจะเป็น 11 หรือมากกว่านั้น

[]เลือกองค์ประกอบต่อไปนี้

?⍨52 สับเปลี่ยนจำนวนเต็ม 52 ตัวแรก (เลือกสุ่ม 52 จำนวนเต็มจากถุงของจำนวนเต็ม 52 ตัวแรก)

⎕UCS แปลงเป็นสัญลักษณ์ที่สอดคล้องกันในU nicode C haracter S et


โซลูชันเวอร์ชัน 16.0 (ปัจจุบันอยู่ในรุ่นเบต้า) (33 ตัวอักษร)

UCS(127136+⍸11>18016|⍳62)[?⍨52]

(... )ในอาเรย์ต่อไปนี้

⍳62 62 จำนวนเต็มแรก

16| โมดูลัส 16

180∨ GCD จาก 180 และนั่น

11> ไม่ว่าจะเป็น 11 หรือมากกว่านั้น

 ดัชนีที่ True

127136+ เพิ่ม 127136 ลงในนั้น

[]เลือกองค์ประกอบต่อไปนี้

?⍨52 สับเปลี่ยนจำนวนเต็ม 52 ตัวแรก (เลือกสุ่ม 52 จำนวนเต็มจากถุงของจำนวนเต็ม 52 ตัวแรก)

⎕UCS แปลงเป็นสัญลักษณ์ที่สอดคล้องกันในU nicode C haracter S et


วิธีการแก้ปัญหาเก่า

UCS(126976+16⊥¨,(9+⍳4)∘.,12~⍨⍳14)[?⍨52]

(... )ในอาเรย์ต่อไปนี้

⍳14 จำนวนเต็ม 14 ตัวแรก

12~⍨ ยกเว้น 12

()∘., ตัดแบ่งให้ละเอียด

  ⍳4 จำนวนเต็ม 4 ตัวแรก

  9+ เพิ่มไป 9

, ravel (แบน) ที่

16⊥¨ ประเมินแต่ละค่าในฐาน 16

126976+ เพิ่ม 126976 ลงไป

[]เลือกองค์ประกอบต่อไปนี้

?⍨52 สับเปลี่ยนจำนวนเต็ม 52 ตัวแรก (เลือกสุ่ม 52 จำนวนเต็มจากถุงของจำนวนเต็ม 52 ตัวแรก)

⎕UCS แปลงเป็นสัญลักษณ์ที่สอดคล้องกันในU nicode C haracter S et


3

ถ่าน 50 ไบต์

A¹²⁷¹³⁶χA⪫E…χ⁺⁶⁴χ℅ιωσWσ«A‽σχA⪫⪪σχωσ¿﹪﹪﹪℅χ¹⁶¦¹⁵¦¹³χ

ลองออนไลน์! การเชื่อมโยงคือการสร้างรหัสเวอร์ชัน สร้างสตริงของอักขระทั้งหมด 64 ตัวในบล็อก แต่กรองการ์ดที่ไม่ถูกต้องออกเนื่องจากมีการสุ่มเลือก (การพูดซึ่งการเลือกแบบสุ่มโดยไม่มีการแทนที่จากสตริงมีเพียง 11 ไบต์เทียบกับ 17 สำหรับอาร์เรย์)

แก้ไข: การลบจากอาเรย์และการปรับปรุงถ่านอื่น ๆ ได้ลดขนาดเป็น 41 ไบต์: ลองออนไลน์!


2

อลิซ 34 ไบต์

'?rwd.n$@U,!6?44*%a7+-F$K?'🂡+OK

ลองออนไลน์!

คำอธิบาย

'?r                               push numbers 0-63 onto stack
   w                              store return address (start main loop)
    d                             get stack depth
     .n$@                         if zero, terminate
         U                        random number in [0, depth)
          ,                       move corresponding stack element to top
           !                      store on tape
             ?                    copy back from tape
              44*%                mod 16
                  a7+-            subtract 17
            6         F           does the result divide 6?
                       $K         if so, return to start of main loop
                         ?        copy card number from tape again
                          '🂡+     add 0x1F0A1
                             O    output
                              K   return to start of main loop

2

> <> , 49 50 49 ไบต์

"🂡"v
=?v>:1+}:88+%:c-:3-**?!~{l4d*
{>x
o^>l?!;

ลองออนไลน์!

(+1 ไบต์เพื่อทำให้การสุ่มดีขึ้น)

ฉันตีความ "สุ่ม" เพื่อแปลว่า "ผลลัพธ์ที่เป็นไปได้ทุกอย่างมีความเป็นไปได้ที่ไม่ใช่ศูนย์" นี่ไม่ใช่การกระจายที่สม่ำเสมอ

รหัสนี้มีสองขั้นตอน ขั้นแรกให้ปลาวางไพ่ทั้งหมดในกองซ้อนโดยใช้สองบรรทัดแรก เริ่มต้นด้วยเอซโพดำปลาทำซ้ำและเพิ่มขึ้นจากนั้นตรวจสอบว่ารหัสเลขฐานสิบหกของการ์ดก่อนหน้านี้ลงท้ายด้วย 0, C หรือ F โดยการคูณด้วยกันx  ( x -12) ( x -15) โดยที่xเป็นตัวแปลงรหัส 16 และตรวจสอบว่าเป็นศูนย์ หากเป็นเช่นนั้นจะเป็นการลบการ์ดที่ละเมิดออกจากสแต็ก มันทำซ้ำจนกระทั่งสแต็คมีไพ่ 52 ใบจากนั้นว่ายน้ำเข้าสู่ด่าน 2

  v
{>x
o^>l?!;

โค้ดนี้จะสับและพิมพ์สแต็ก xกำหนดทิศทางของปลาสุ่ม:

  • ถ้าปลาแหวกว่ายมันก็กระทบvและกลับไปที่ปลาxโดยไม่ทำอะไรเลย ทิศทางด้านซ้ายคล้ายกัน
  • ถ้าปลาแหวกว่ายขวาก็แรปและฮิตหมุนทั้งกองไปทางซ้ายแล้วจะกลับไปที่{x
  • xถ้าปลาแหวกว่ายลงก็พิมพ์บัตรที่ด้านหน้าของสแต็คจากนั้นกลับไปที่

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


2

R, 61 ไบต์

cat(intToUtf8(sample(c(127137:127198)[-c(12,28,44,47,60)])))

สุ่มตัวอย่างเวกเตอร์ของการแทนค่าจำนวนเต็มของค่า unicode ของการ์ด (ซึ่งสามารถหาได้จากutf8ToInt()fucntion) และลบการ์ดอัศวิน / โจ๊กเกอร์ที่ไม่ต้องการ



1

C # ( 146 141 ไบต์)

using System.Linq;()=>Enumerable.Range(0,52).OrderBy(i=>System.Guid.NewGuid()).Aggregate("",(s,i)=>s+"\uD83C"+(char)(56481+i+i/13*3+i%13/12))

การสาธิตออนไลน์

สิ่งนี้ใช้สไตล์ที่แย่มากในการสับด้วยGuid.NewGuid()แต่มันเป็นรหัสกอล์ฟ จากนั้นสร้างคู่ตัวแทนด้วยตนเอง


ใช้งานได้จริงหรือ เมื่อใดก็ตามที่ฉันพยายามหล่อ int แบบไดนามิกให้กับตัวละครมันมีข้อยกเว้น?
TheLethalCoder

@TheLethalCoder ฉันไม่มีค่าแบบไดนามิก แต่เพื่อเป็นการพิสูจน์ว่าได้ผลฉันได้แนบลิงก์ Ideone
Peter Taylor

ฉันหมายถึง int ที่สร้างขึ้นสำหรับส่วนที่สองของคู่ตัวแทน
TheLethalCoder

คุณสามารถบันทึกไบต์โดยไม่รวมอัฒภาคต่อท้าย
TheLethalCoder

กล่าวว่า 147 ไบต์อ่านเป็น 146
Neil A.

0

Perl 5, 75 ไบต์

@c=map{7946+$_%4+$_/64}4..51,56..59;print chr(16*splice@c,@c*rand,1)while@c

โปรดทราบว่าสิ่งนี้ใช้จุดรหัสสำหรับราชินีตามที่กำหนดในคำถาม (เช่นหลักสุดท้ายC) สำหรับจุดรหัสจริง (หลักสุดท้ายD) แทนที่ด้วย51,5647,52


0

Java 8, 216 ไบต์

import java.util.*;()->{List<Long>l=new ArrayList();for(long i=52;i-->0;l.add(i));Collections.shuffle(l);for(Long x:l)System.out.print((char)(x.parseLong("1F0"+(char)(65+x/12)+((x%=4)>9?(char)(x>2?69:65+x):x),16)));}

คำอธิบาย:

ลองที่นี่

หมายเหตุ: ยังไม่ทดลองเพราะฉันติดตั้งแบบอักษรที่เชื่อมโยงแล้ว แต่ฉันยังคงเห็นกล่อง อาจต้องรีสตาร์ทพีซีหรือบางอย่าง ..

import java.util.*;               // Required import for List, ArrayList and Collections
()->{                             // Method without parameter nor return-type
  List<Long>l=new ArrayList();    //  List
  for(long i=52;i-->0;l.add(i));  //  Fill the list with 1 through 52
  Collections.shuffle(l);         //  Randomly shuffle the list
  for(Long x:l)                   //  Loop over the shuffled list
    System.out.print(             //   Print the following character:
      (char)(x.parseLong(         //    Convert the following String to a character:
        "1F0"+                    //     The literal String "1F0" +
         (char)(65+x/12)+         //     either A, B, C or D by using x/12, adding 65,
                                  //      and casting it to a char +
         ((x%=4)>9?               //     If the current item mod-4 is 10 or higher:
            (char)(x>2?69:65+x)   //      Convert it to A, B, C or E
           :                      //     Else (1 through 9):
            x)                    //      Simply add this digit
      ,16))
    );
}                                 // End of method


0

Japt , 51 41 39 22 ไบต์

ด้วยแรงบันดาลใจจากการแก้ปัญหาวุ้นโจนาธาน

#?ö¬k@B§XuG y#´Ãmd##

ลองใช้ (หรือดูผลลัพธ์ด้วยการเพิ่มfont-size )


คำอธิบาย

#?                         :63
  ö¬                       :Random permutation of range [0,63)
    k                      :Remove elements that return true
     @                     :When passed through this function
      B                    :  11
       §                   :  Less than or equal to
        X                  :  Current element
         u                 :  Modulo
          G                :  16
            y              :  GCD
             #´            :  180
               Ã           :End function
                m          :Map
                  ##       :  Add 127136
                 d         :  Get character at that codepoint
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.