อักขระ ASCII ทั้งหมดที่มีจำนวนบิตที่กำหนด


30

(ชื่อด้วยขอบคุณ @ChasBrown)

Sandbox

พื้นหลัง

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

ข้อเท็จจริง

อักขระ ASCII มาตรฐานที่พิมพ์ได้ทุกตัวมีค่าทศนิยมตั้งแต่ 32 ถึง 126 ตัว สามารถแปลงเป็นเลขฐานสองที่สอดคล้องกันในช่วง 100000 ถึง 1111110 เมื่อคุณรวมจำนวนบิตของเลขฐานสองเหล่านี้คุณจะต้องลงท้ายด้วยจำนวนเต็มตั้งแต่ 1 ถึง 6

ความท้าทาย

กำหนดจำนวนเต็มตั้งแต่ 1 ถึง 6 ให้รวมเป็นอินพุตให้เขียนโปรแกรมหรือฟังก์ชันซึ่งจะส่งออกในรูปแบบที่ยอมรับได้ทุกตัวอักษร ASCII มาตรฐานที่พิมพ์ได้โดยที่ผลรวมของบิตของค่าไบนารีของพวกเขาจะเท่ากับจำนวนเต็มอินพุต

ตัวอย่าง / กรณีทดสอบ

1 -> ' @'
2 -> '!"$(0ABDHP`'
3 -> '#%&)*,1248CEFIJLQRTXabdhp'
4 -> ''+-.3569:<GKMNSUVYZ\cefijlqrtx'
5 -> '/7;=>OW[]^gkmnsuvyz|'
6 -> '?_ow{}~'

ungolfed ดำเนินการอ้างอิงหลามใช้ได้นี่ (TIO)

กฎระเบียบ

  1. สมมติว่าอินพุตจะเป็นจำนวนเต็มเสมอ (หรือการแทนค่าสตริงของจำนวนเต็ม) ระหว่าง 1 ถึง 6
  2. คุณสามารถเขียนโปรแกรมเพื่อแสดงผลลัพธ์หรือฟังก์ชั่นเพื่อส่งคืนได้
  3. การส่งออกอาจจะอยู่ในรูปแบบที่เหมาะสมใด ๆ แต่จะต้องมีความสอดคล้องกันสำหรับปัจจัยการผลิตทั้งหมด หากคุณเลือกที่จะส่งออกสตริงที่ยกมาจากนั้นจะต้องใช้อัญประกาศชนิดเดียวกันสำหรับอินพุตทั้งหมด
  4. ช่องโหว่มาตรฐานไม่ได้รับอนุญาตตามปกติ
  5. นี่คือรหัสกอล์ฟที่สั้นที่สุดในแต่ละภาษาที่ชนะ

เราได้รับอนุญาตให้ส่งคืน / พิมพ์รายการของค่า ASCII ทศนิยมหรือไม่หรือเราต้องการให้มีรูปแบบของตัวอักษร (เช่น63vs ?)
Benjamin Urquhart

1
ต้องเป็นอักขระจริง
ElPedro

7
"ต้องใช้เครื่องหมายคำพูดประเภทเดียวกันสำหรับอินพุตทั้งหมด" Python ตัวอย่างเช่นใช้เครื่องหมายคำพูดเดี่ยว ( ') สำหรับการแทนสตริงของสตริงตามค่าเริ่มต้น แต่ใช้เครื่องหมายคำพูดคู่ ( ") ถ้าสตริงมีเครื่องหมายคำพูดเดี่ยวและไม่มีเครื่องหมายคำพูดคู่ . ไม่ว่ากรณีนี้จะมีความสำคัญมากเพราะคุณน่าจะดีกว่าที่จะส่งคืนสตริงจริงแทนที่จะเป็นตัวแทนของมันและคุณยังสามารถใช้เครื่องหมายคำพูดเดี่ยวในสตริงเพื่อป้อนข้อมูลได้ แต่ฉันรู้สึกว่ามันควรค่าแก่การกล่าวถึงที่นี่
Erik the Outgolfer

@EriktheOutgolfer เห็นด้วย นั่นคือเหตุผลที่ฉันคิดว่ามันอาจจะน่าสนใจแค่โยนมันเข้าไปในกฎพิเศษ :-)
ElPedro

1
@ElPedro ฉันไม่แน่ใจว่าจะทำอย่างไรเพราะมันอาจเป็นความคิดที่ดีที่จะมีคำพูดเนื่องจากมีช่องว่างในตัวอย่างแรก แต่คำพูดปกติทั้งคู่ปรากฏในผลลัพธ์ :) แก้ไข: อาจใช้ French guillemets ( « »)? : D
ข้อบกพร่อง

คำตอบ:


29

ชุดประกอบ 8088, IBM PC DOS, 35 30 29 ไบต์

รหัสเครื่อง:

be81 00ad 8afc b330 b108 d0c8 12dd e2fa 3afb 7504 b40e cd10 fec0 79ea c3

รายการ:

BE 0081     MOV  SI, 081H   ; SI = memory address of command line string
AD          LODSW           ; AL = start ASCII value (init to 20H from space on cmd line)
8A FC       MOV  BH, AH     ; BH = target number of bits (in ASCII)
        CHR_LOOP:
B3 30       MOV  BL, '0'    ; BL = counter of bits, reset to ASCII zero
B1 08       MOV  CL, 8      ; loop through 8 bits of AL
        BIT_LOOP:
D0 C8       ROL  AL, 1      ; rotate LSB of AL into CF
12 DD       ADC  BL, CH     ; add CF to BL (CH is always 0) 
E2 FA       LOOP BIT_LOOP   ; loop to next bit
3A FB       CMP  BH, BL     ; is current char the target number of bits?
75 04       JNE  NO_DISP    ; if not, do not display
B4 0E       MOV  AH, 0EH    ; BIOS write char to screen function
CD 10       INT  10H        ; display ASCII char in AL (current char in loop)
        NO_DISP: 
FE C0       INC  AL         ; increment char to next ASCII value
79 EA       JNS  CHR_LOOP   ; if char <= 127, keep looping
C3          RET             ; return to DOS

โปรแกรมเรียกทำงาน PC DOS แบบสแตนด์อโลนหมายเลขอินพุตจากบรรทัดรับคำสั่ง เอาท์พุทจะปรากฏขึ้นเพื่อหน้าต่างคอนโซล

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

ดาวน์โหลดและทดสอบABCT.COM (AsciiBitCounT)


8
สักครู่ฉันคิดว่ามันบอกว่า "ดาวน์โหลดและทดสอบAT ABCT.COM" ราวกับว่าคุณได้ลงทะเบียนโดเมนสำหรับคำตอบนี้แล้ว
Sparr

14

ชุดประกอบCP-1610 ( Intellivision ), 20 DECLEs 1 = 25 ไบต์

ใช้เวลาในR0และชี้ไปยังบัฟเฟอร์เอาต์พุตในR4 เขียนตัวอักษรที่ตรงกันทั้งหมดในบัฟเฟอร์และเครื่องหมายในตอนท้ายของผลที่มีNULN

                ROMW    10              ; use 10-bit ROM width
                ORG     $4800           ; map this program at $4800

                ;; ------------------------------------------------------------- ;;
                ;;  test code                                                    ;;
                ;; ------------------------------------------------------------- ;;
4800            EIS                     ; enable interrupts

4801            MVII    #$103,    R4    ; set the output buffer at $103 (8-bit RAM)
4803            MVII    #2,       R0    ; test with N = 2
4805            CALL    getChars        ; invoke our routine

4808            MVII    #$103,    R4    ; R4 = pointer into the output buffer
480A            MVII    #$215,    R5    ; R5 = backtab pointer

480C  draw      MVI@    R4,       R0    ; read R0 from the buffer
480D            SLL     R0,       2     ; R0 *= 8
480E            SLL     R0
480F            BEQ     done            ; stop if it's zero

4811            ADDI    #7-256,   R0    ; draw it in white
4815            MVO@    R0,       R5

4816            B       draw            ; go on with the next entry

4818  done      DECR    R7              ; loop forever

                ;; ------------------------------------------------------------- ;;
                ;;  routine                                                      ;;
                ;; ------------------------------------------------------------- ;;
      getChars  PROC

4819            MVII    #32,      R1    ; start with R1 = 32

481B  @loop     MOVR    R1,       R3    ; copy R1 to R3
481C            CLRR    R2              ; clear R2
481D            SETC                    ; start with the carry set

481E  @count    ADCR    R2              ; add the carry to R2
481F            SARC    R3              ; shift R3 to the right (the least
                                        ; significant bit is put in the carry)
4820            BNEQ    @count          ; loop if R3 is not zero

4822            CMPR    R2,       R0    ; if R2 is equal to R0 ...
4823            BNEQ    @next

4825            MVO@    R1,       R4    ; ... write R1 to the output buffer

4826  @next     INCR    R1              ; advance to the next character
4827            CMPI    #127,     R1    ; and loop until 127 is reached
4829            BLT     @loop

482B            MVO@    R3,       R4    ; write NUL to mark the end of the output

482C            JR      R5              ; return

                ENDP

เอาต์พุตสำหรับ N = 2

หมายเหตุ: วงเล็บเปิดมีลักษณะเหมือนวงเล็บเหลี่ยมเปิดในแบบอักษร Intellivision แม้ว่าตัวละครทั้งสองจะแตกต่างกัน

เอาท์พุต

ภาพหน้าจอจากjzIntv


1. CP-1610 opcode ถูกเข้ารหัสด้วยค่า 10 บิตหรือที่เรียกว่า 'DECLE' รูทีนนี้มีความยาว 20 DECLE เริ่มต้นที่ $ 4819 และสิ้นสุดที่ $ 482C (รวมอยู่ด้วย)


5
+1 เพียงเพื่อ (ก) วิธีแก้ปัญหาสำหรับ Intellivision และ (b) รหัส Intellivision แรกที่ฉันเคยเห็น
Eight-Bit Guru

3
@ Eight-BitGuru การเข้ารหัสบน Intellivision นั้นสนุกดี และเกม homebrew ของวันนี้เขียนด้วย ROM แบบ 16 บิตซึ่งปลดล็อคพลังเต็ม (ahem ... ) ของซีพียู :)
Arnauld

ที่น่าประทับใจ! ไม่มีความคิด Intellivision มีบัฟเฟอร์เฟรมและชุดอักขระในตัว ล้ำสมัยกว่าอาตาริ 2600 อย่างแน่นอน ทำได้ดีมาก!
640KB

2
@gwaugh The GROM (สำหรับกราฟิก ROM) มีอักขระ ASCII ที่พิมพ์ได้ทั้งหมดและรูปร่างกราฟิกทั่วไปสองสามตัว ความจริงสนุก: มันยังมีรหัสที่สามารถใช้งานได้บางตัวที่ไม่เหมาะกับ ROM หลัก
Arnauld

แน่นอนมากกว่าขั้นสูงกว่า 2,600 แต่หากหน่วยความจำทำหน้าที่แมทเทลไม่ได้เปิดเผยสิ่งที่ซ่อนอยู่ใน ROM ดังนั้น devs บุคคลที่สามจึง จำกัด รหัสเครื่องตรงหรือต้องแยกแยะสิ่งแฟนซีด้วยตัวเอง . อาจไม่มีหลักฐาน
brhfl



8

Perl 6 , 41 34 ไบต์

{chrs grep *.base(2)%9==$_,^95+32}

ลองออนไลน์!

รหัสบล็อกที่ไม่ระบุชื่อที่ใช้ตัวเลขและส่งกลับสตริงของอักขระที่ถูกต้อง

คำอธิบาย:

{                                }  # Anonymous code block taking a number
      grep                ,^95+32   # Filter from the range 32 to 126
           *.base(2)                # Where the binary of the digit
                    %9                # When parsed as a decimal modulo 9
                      ==$_            # Is equal to the input
 chrs                               # And convert the list of numbers to a string

nbndigitsum(n)(modb1)b(modb1)=1

เราสามารถใช้สิ่งนี้เพื่อรับค่าตัวเลขของเลขฐานสองของเราโดยการแยกเป็นเลขฐานสิบและโมดูโลที่ 9 ซึ่งใช้ได้เพราะช่วงของตัวเลขที่เราใช้นั้นรับประกันว่ามีน้อยกว่า 9 บิต สิ่งนี้ได้รับการช่วยเหลือโดยการส่งเลขฐานสองของ Perl 6 ไปเป็นตัวเลขทศนิยมโดยอัตโนมัติเมื่อใช้ในบริบทที่เป็นตัวเลข



7

JavaScript (Node.js) , 60 ไบต์

ใช้เคล็ดลับแบบโมดูโลของ Jo King

n=>(g=x=>x>>7?'':Buffer(x.toString(2)%9-n?0:[x])+g(x+1))(32)

ลองออนไลน์!


JavaScript (Node.js) ,  70  69 ไบต์

n=>(g=x=>x>>7?'':Buffer((h=x=>x&&x%2+h(x>>1))(x)-n?0:[x])+g(x+1))(32)

ลองออนไลน์!

แสดงความคิดเห็น

n => (              // n = input
  g = x =>          // g = recursive function, taking a byte x
    x >> 7 ?        //   if x = 128:
      ''            //     stop recursion and return an empty string
    :               //   else:
      Buffer(       //     create a Buffer:
        (h = x =>   //       h = recursive function taking a byte x
          x &&      //         stop if x = 0
          x % 2 +   //         otherwise, add the least significant bit
          h(x >> 1) //         and do a recursive call with floor(x / 2)
        )(x)        //       initial call to h
        - n ?       //       if the result is not equal to n:
          0         //         create an empty Buffer (coerced to an empty string)
        :           //       else:
          [x]       //         create a Buffer consisting of the character x
      ) +           //     end of Buffer()
      g(x + 1)      //     append the result of a recursive call to g with x + 1
)(32)               // initial call to g with x = 32

60 ไบต์โดยใช้เคล็ดลับ modulo ของ Jo
Shaggy

@Shaggy Oh นั่นเป็นสิ่งที่ดี
Arnauld

6

Brachylogขนาด 7 ไบต์

∈Ṭ&ạhḃ+

ลองออนไลน์!

เพรดิเคตที่ทำหน้าที่เป็นตัวสร้างใช้อินพุตผ่านตัวแปรเอาต์พุตและสร้างอักขระแต่ละตัวผ่านตัวแปรอินพุต เพราะ Brachylog

           The input variable (which is an element of the output)
∈          is an element of
 Ṭ         the string containing every printable ASCII character
  &        and the input
   ạh      converted to a codepoint
     ḃ     converted to a list of binary digits
      +    sums to
           the output variable (which is the input).


5

Excel (2016 หรือใหม่กว่า), 76 ไบต์

=CONCAT(IF(LEN(SUBSTITUTE(DEC2BIN(ROW(32:126)),0,))=A1,CHAR(ROW(32:126)),""))

รับอินพุตจาก A1 เอาต์พุตในเซลล์ใด ๆ ที่คุณใส่สูตรนี้ นี่คือสูตรอาร์เรย์ดังนั้นคุณต้องกดCtrl+ Shift+ Enterเพื่อป้อนข้อมูล "2016 หรือใหม่กว่า" เป็นเพราะมันต้องการCONCATฟังก์ชั่น (ที่คัดค้านCONCATENATEจะไม่ใช้อาร์เรย์เป็นอาร์กิวเมนต์)


ฉันชอบสิ่งนี้. ฉันเป็น Lotus Notes และคนที่แต่งตัวประหลาด 123 คนมันใช้ได้กับฉัน :-)
ElPedro

5

C (ไลบรารีมาตรฐาน), 74 67 ไบต์

i;j;k;f(n){for(i=31;i<126;k||puts(&i))for(k=n,j=++i;j;j/=2)k-=j&1;}

ใช้ฟังก์ชันไลบรารีมาตรฐานเท่านั้น ขอบคุณไปที่ @gastropner เพื่อการปรับปรุงจาก 74 เป็น 67 ไบต์

ลองออนไลน์!



@gastropner นั้นเป็นการปรับปรุงที่น่าทึ่ง! ขอขอบคุณ!
Krista

1
ฉันคิดว่าคุณต้องเริ่มต้นที่ดัชนี 31 เพื่อรับพื้นที่ในf(1)กรณี (เพราะ++iข้าม)
LambdaBeta

@ LambdaBeta คุณพูดถูกจริงๆขอบคุณ!
Krista

5

R , 77 68 ไบต์

วิธีการใช้สำหรับวง

-9 ไบต์ขอบคุณ Giuseppe

n=scan();for(i in 32:126)if(sum(intToBits(i)>0)==n)cat(intToUtf8(i))

ลองออนไลน์!

ก่อนหน้านี้:

R , 78 69 66 ไบต์

-12 ไบต์ขอบคุณ Giuseppe

a=32:126;cat(intToUtf8(a[colSums(sapply(a,intToBits)>0)==scan()]))

เปลี่ยนตัวเลข 32 ถึง 126 ให้เป็นเมทริกซ์ของบิตจากนั้นจะบวกกับแถวเพื่อค้นหาว่าหมายเลขใดตรงกับหมายเลขที่ป้อน

ลองออนไลน์!


1
ใช้intToBits(x)>0แทนas.single
Giuseppe

ดีฉันพยายาม|0และได้รับข้อผิดพลาดและเพิ่งสันนิษฐานว่าตัวดำเนินการเชิงตรรกะไม่ทำงาน
Aaron Hayman

1
66 bytesสำหรับวิธี "ก่อนหน้า" โดยใช้sapplyแทนmatrix
Giuseppe

4

Java 10, 98 97 94 70 67 ไบต์

n->{for(var c='';c-->31;)if(n.bitCount(c)==n)System.out.print(c);}

-24 ไบต์ขอบคุณที่NahuelFouilleul

ลองออนไลน์

คำอธิบาย:

127มีอักขระที่ไม่สามารถพิมพ์ด้วยค่า Unicode

n->{                         // Method with Integer parameter and no return-type
  for(var c='';c-->31;)     //  Loop character `c` in the range ['~', ' '] / (127,31):
    if(n.bitCount(c)         //   If the amount of 1-bits in the two's complement binary
                             //   representation of the current characters
                    ==n)     //   equals the input:
      System.out.print(c);}  //    Print the current character

1
-24bytesใช้ Long.bitCount
Nahuel Fouilleul

@NahuelFouilleul อาฉันมักจะลืมเกี่ยวกับตัวที่ใน Java! ขอบคุณมาก. และ 3 n.bitCountไบต์จะถูกบันทึกไว้โดยใช้ :)
Kevin Cruijssen

ใช่จาวาจาวาสคริปต์อีกครั้ง! ฉันชอบความท้าทายของตัวละครเหล่านั้น: P
Olivier Grégoire

4

Java 8, 131 71 ไบต์

-60 ไบต์ขอบคุณทุกคนในคอมเม้นท์

คืนค่าjava.util.stream.IntStreamcodepoints

n->java.util.stream.IntStream.range(32,127).filter(i->n.bitCount(i)==n)

ลองออนไลน์!

ใช้ HashSet 135 ไบต์ ส่งคืน a Set<Object>:

n->new java.util.HashSet(){{for(int i=31;i++<126;add(Long.toBinaryString(i).chars().map(c->c-48).sum()==n?(char)i+"":""),remove(""));}}

ลองออนไลน์!



1
การเข้าถึงแบบสแตติกจากบริบทที่ไม่คงที่ reeeeeee ขอบคุณ
Benjamin Urquhart

Long.toBinaryString(i)สามารถLong.toString(i,2);
Kevin Cruijssen

1
@KevinCruijssen นั่นเป็นสิ่งที่ความคิดเห็นแรกของฉันทำ
ข้อมูลหมดอายุ

1
@KevinCruijssen คุณพูดถูก ต่อไปนี้เป็นรุ่นที่คงที่: (ยังคง) 71 ไบต์ และใช่ฉันเห็นเวอร์ชันของคุณซึ่งฉันโหวตน้อยกว่า 10 นาทีที่ผ่านมา;)
Olivier Grégoire

4

C # (Visual C # Interactive คอมไพเลอร์) , 86 ไบต์

n=>Enumerable.Range(32,95).Where(x=>"0123456".Sum(g=>x>>g-48&1)==n).Select(x=>(char)x)

ขอบคุณ @ExpiredData ที่ให้แนวคิดแก่ฉันในการใช้Sum()! เมื่อฉันกลับไปที่พีซีของฉันฉันจะแทนที่สตริง"0123456"ด้วย unprintables และบันทึกสามไบต์

ลองออนไลน์!



@ ExpiredData ขอบคุณสำหรับความคิดที่จะใช้Sum()!
ศูนย์รวมแห่งความไม่รู้




3

J , 31 27 ไบต์

-4 ไบต์ขอบคุณเลน

[:u:32+[:I.]=1#.32#:@+i.@95

ลองออนไลน์!

คำตอบเดิม

a.#~&(95{.32}.])]=1#.2#:@i.@^8:

ลองออนไลน์!

  • 2#:@i.@^8:สร้างเลขฐานสอง 0 ถึง 255 ( 2 ^ 8เป็น 256)
  • 1#. ผลรวมแต่ละคน
  • ]= สร้างไบนารีมาสก์ซึ่งแสดงว่าผลรวมเท่ากับอินพุตต้นฉบับ
  • a.#~ mask ใช้หน้ากากไบนารีนั้นเพื่อกรองตัวอักษร ASCII แบบเต็มของ J a.
  • &(95{.32}.]) แต่ก่อนที่จะทำเช่นนั้นจะใช้เพียงองค์ประกอบ 32 ... 126 จากทั้งตัวอักษรและหน้ากาก


ขอบคุณเลน จนกว่าคุณจะทำได้i.@95
โยนาห์


3

K (ngn / k) , 20 ไบต์

วิธีการแก้:

`c$32+&(+/2\32+!95)=

ลองออนไลน์!

คำอธิบาย:

ประเมินจากขวาไปซ้าย:

`c$32+&(+/2\32+!95)= / the solution
                   = / equals?
       (          )  / do this together
               !95   / range 0..94
            32+      / add 32, so range 32..126
          2\         / break into base-2
        +/           / sum up
      &              / indices where true
   32+               / add 32
`c$                  / cast to character

3

6502 ชุดประกอบ (NES), 22 ไบต์

รหัสเครื่อง:

a0 1f a6 60 c8 98 30 fb ca 0a b0 fc d0 fb e8 d0 f1 8c 07 20 f0 ec

สภา:

    ldy #$1f ; Y holds the current character code
NextCharacter:
    ldx $60 ; load parameter into X
    iny
    tya
    bmi (NextCharacter + 1) ; exit at char 128, #$60 is the return opcode

CountBits:
    dex
Continue:
    asl
    bcs CountBits
    bne Continue

CompareBitCount:
    inx ; fixes off-by-one error and sets Z flag if bit count matches
    bne NextCharacter
    sty $2007
    beq NextCharacter ; always branches

โปรแกรมเต็มรูปแบบโปรแกรมเต็มรูปแบบทดสอบกับ FCEUX 2.2.3 ควรทำงานกับตัวจำลอง NES มาตรฐานใด ๆ

แรงบันดาลใจจากคำตอบของ Ryan Russell อินพุตที่กำหนดที่ที่อยู่ CPU $ 60 ส่งออกไปยังหน่วยความจำหน่วยประมวลผลภาพของคอนโซล


2
สวัสดีและยินดีต้อนรับสู่ PPCG มีวิธีใดบ้างในการตรวจสอบโซลูชันของคุณนอกเหนือจากการสร้างคาร์ทริดจ์เช่นอีมูเลเตอร์ (ออนไลน์) หรือสเปค
Jonathan Frech

@JonathanFrech ฉันได้เพิ่มโปรแกรมเต็มรูปแบบที่สามารถรวบรวมและเรียกใช้ในพื้นที่ อย่างที่ฉันเข้าใจสภาพแวดล้อมของ NES นั้นไม่ได้เป็นมาตรฐานสำหรับ codegolf
ลบเจ็ด


2

PowerShell , 83 ไบต์

param($n)[char[]](32..126|?{([convert]::ToString($_,2)|% t*y|group)[1].count-eq$n})

ลองออนไลน์!

รับอินพุต$nสร้างช่วงจาก32ถึง126และดึงตัวเลขเหล่านั้นโดยที่|?{}: ตัวเลข, converted ToStringในเบส2; toCharArra ที่แปลงyแล้ว; grouped เป็น0s และ1s; รับ[1]ดัชนีของการจัดกลุ่มนั้น การ.countนั้นและการตรวจสอบว่ามันเป็น-eqทางเพศที่จะป้อนข้อมูลของเรา$nสีน้ำตาลไหม้ ตัวเลขเหล่านั้นจะถูกโยนเป็นแบบ - charเรย์และทิ้งไว้บนไปป์ไลน์ เอาท์พุทเป็นนัยโดยมีการขึ้นบรรทัดใหม่ระหว่างองค์ประกอบ



2

ถ่าน 10 ไบต์

Φγ⁼Σ↨℅ι²Iθ

ลองออนไลน์! การเชื่อมโยงคือการใช้รหัสเวอร์ชันอย่างละเอียด คำอธิบาย:

 γ          Predefined ASCII characters
Φ           Filtered by
      ι     Current character's
     ℅      ASCII code
    ↨       Converted to base
       ²    Literal 2
   Σ        Summed
  ⁼         Equals
         θ  First input
        I   Cast to integer
            Implicitly printed




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