เขียนช่วงเวลาที่ยาวที่สุดวนซ้ำควินที่ล้อมรอบด้วย 500 ไบต์


16

งานของคุณคือการสร้างช่วงเวลาที่ยาวที่สุดวนซ้ำซึ่งความยาวของแต่ละโปรแกรมในลำดับนั้นล้อมรอบด้วย 500 ไบต์

นั่นคือถ้าคุณทำซ้ำขั้นตอนต่อไปนี้:

  1. เริ่มด้วยโปรแกรมเริ่มต้นของคุณ
  2. เรียกใช้โปรแกรมปัจจุบัน
  3. กลับไปที่ขั้นตอนที่ 2

ในที่สุดคุณจะกลับไปที่โปรแกรมดั้งเดิมของคุณ จำนวนโปรแกรมในรอบคือคะแนนของคุณซึ่งคุณพยายามเพิ่ม

ไม่มีโปรแกรมใดที่สามารถเพิ่มข้อผิดพลาดได้ แต่ละโปรแกรมจะต้องทำงานในลักษณะเดียวกันเช่นกัน (เช่นไม่มีเวอร์ชั่นที่แตกต่างกันการนำไปใช้งานตัวเลือกคอมไพเลอร์แพลตฟอร์ม ฯลฯ ... ) (แก้ไข: ใช่สถานะภายนอกใด ๆ เช่นที่ของเครื่องกำเนิดเลขสุ่มหลอกรวมอยู่ในที่สุด คำสั่งสถานะภายนอกจะต้อง "รีเซ็ต" หลังจากการเรียกใช้แต่ละครั้งหากคุณใช้ตัวเลขสุ่มจริงจะถือว่าเป็นกรณีที่เลวร้ายที่สุด)

สิ่งที่แยกความท้าทายนี้ออกจากรอบระยะเวลาที่ยาวที่สุดวนรอบควิน (นอกเหนือจาก 100 vs 500) คือทุกโปรแกรมในรอบนั้นจะต้องมี 500 ไบต์หรือน้อยกว่า ซึ่งหมายความว่ารอบที่ยาวที่สุดที่เป็นไปได้คือ (256 ^ 501 - 1) / 255 หรือน้อยกว่า แน่นอนว่าเป็นจำนวนมาก แต่ไม่มากในแง่ของจำนวนรหัสที่ใช้ในการคำนวณ ดังนั้นความท้าทายจึงเกี่ยวกับการใช้ความเป็นไปได้ (256 ^ 501 - 1) / 255 ให้มากที่สุดเท่าที่จะทำได้ไม่ใช่ความท้าทายในช่องคลอดที่ยุ่ง

โปรแกรมไม่ได้รับอนุญาตให้เข้าถึงซอร์สโค้ดของตัวเอง แต่โปรแกรมที่ว่างเปล่าจะได้รับอนุญาตให้ถ้าคุณต้องการ (ตราบเท่าที่คุณทำตามกฎระเบียบอื่น ๆ )

เนื่องจากการตรวจสอบโปรแกรมด้วยตนเองอาจเป็นเรื่องยากคุณอาจเข้าใจคะแนนโดยใช้วิธีการทางทฤษฎี คุณต้องรวมคำอธิบายของคะแนนและความถูกต้องกับโปรแกรมของคุณ หากคุณไม่สามารถหาคะแนนได้คุณอาจใช้ขอบเขตของโปรแกรมในวงรอบล่างแทนคะแนน defacto คุณได้รับอนุญาตให้อัปเดตสิ่งนี้เมื่อคุณพบว่าขอบเขตที่ต่ำกว่าดีกว่าหรือถ้าคุณพบคะแนนจริงแน่นอน

นี่เป็นคะแนนสูงสุดจึงชนะ!

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


2
"รอบที่ยาวที่สุดที่เป็นไปได้คือ (256 ^ 501 - 1) / 255 หรือน้อยกว่า" --- นี่ไม่จำเป็นต้องเป็นจริงโปรแกรมอาจผ่านสถานะเดียวกันหลาย ๆ ครั้งก่อนที่จะกลับไปที่ต้นฉบับถ้ามันจัดการกับวัตถุภายนอก ( เช่นรัฐหรือเมล็ดพันธุ์ RNG)
JDL

2
@JDL ที่ควรจะขัดกับกฎ IMHO - ถ้ามันเก็บสถานะอื่นที่นอกเหนือจากในซอร์สโค้ดก็จะไม่เป็นวนซ้ำที่เหมาะสม
นาธาเนียล

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

1
@JDL ไม่พวกมันต่างกัน โปรแกรมใด ๆ ในภาษาใด ๆ ต้องอาศัยสิ่งต่าง ๆ ที่นำมาใช้นอกซอร์สโค้ด แต่การเก็บสถานะภายนอกซอร์สโค้ดนั้นแตกต่างกัน นั่นหมายความว่าเอาท์พุทของโปรแกรมไม่ใช่ฟังก์ชันที่กำหนดค่าได้ของซอร์สโค้ด แต่ขึ้นอยู่กับบริบทภายนอกอื่น ๆ ที่ถูกเปลี่ยนแปลงโดยการรันครั้งก่อน ที่ไม่ควรได้รับอนุญาตในการท้าทายควินิน IMHO และคำแถลงการณ์ของ OP เกี่ยวกับความยาวของรอบสูงสุดบ่งชี้ว่ามันไม่ได้รับอนุญาตให้มาที่นี่
นาธาเนียล

3
@JDL เนื่องจากฉันมั่นใจว่าคุณทราบแล้วว่าในภาษาที่กำหนดขึ้นตัวชี้คำสั่งจะเก็บสถานะไว้ระหว่างการทำงานของโปรแกรมเท่านั้นและไม่ได้อยู่ระหว่างการเรียกใช้ของโปรแกรม ตัวอย่าง 5 สถานะของคุณเป็นไปไม่ได้ถ้าเอาท์พุทของโปรแกรมเป็นฟังก์ชันที่กำหนดขึ้นจากแหล่งที่มา
นาธาเนียล

คำตอบ:


12

Perl 6 , 1263988.86×10835การทำซ้ำ

$!=Q~~;<say "\$!=Q~{chrs(my@a=[R,] polymod :126[$!.ords]+1: 126 xx*)x?(@a-399)}~;<$_>~~.EVAL">~~.EVAL

ลองออนไลน์!

ซึ่งจะวนซ้ำผ่านชุดค่าผสมที่เป็นไปได้ทั้งหมดของ 126 ไบต์แรกของความยาว 398 และต่ำกว่า (ยกเว้นสตริงที่มี NUL ไบต์นำหน้า) หากคุณต้องการที่จะเห็นว่าจริง ๆ แล้วมันกลับไปซ้ำแรกคุณสามารถลดความยาวถึง 1 โดยการเปลี่ยนขีด จำกัดเช่นดังนั้น

คำอธิบาย:

การวนซ้ำแต่ละครั้งจะเพิ่มสตริงที่เก็บในรูปแบบฐาน 126 จากนั้นแปลงกลับเป็นฐาน 126 โดยทำเช่นนี้จนกว่าจะถึงสตริงที่มีความยาว 399 จากนั้นรีเซ็ตสตริงกลับเป็นค่าว่างอีกครั้ง หากคุณกำลังมีปัญหาในการกำหนดตัวเลขให้นึกภาพด้วยจำนวนสิบไบต์แทน เริ่มต้นจาก0เพิ่มขึ้นสูงสุด 4 หลัก1000และรีเซ็ต นี่คือการทำซ้ำ104-1 (รวมถึง0หรือสตริงว่างในกรณีของโปรแกรมของฉัน)

$!=Q~~;         # Start with an empty string
< ... >~~.EVAL  # Set a string to $_ and EVAL it
  say "\$!=Q~{...}~;<$_>~~.EVAL"   # Print the program with the string replaced by
                       :126[$!.ords]   # The string converted from base 126
                                    +1 # Incremented
          [R,] polymod                : 126 xx*  # Back to base 126
chrs(                                )  # Back to a string
     my@a=                            x?(@a-399)  # Only if it isn't 399 characters

1
ว้าวคุณทำเร็วมากฉันเกือบจะเสร็จแล้ว แต่ฉันอาจจะเสร็จในวันพรุ่งนี้ (ของฉันจะอยู่ที่ Gol> <>)
KrystosTheOverlord

การคำนวณนี้แสดงให้เห็นว่าคุณประเมินคะแนนของคุณ ตัวเศษคือจำนวนสายอักขระความยาว 397 ที่มีการใช้สัญลักษณ์ 126 ตัว (ฉันต้องกระจายเศษส่วนเป็นผลรวมตั้งแต่วุลแฟรมอัลฟ่าทำตัวประหลาด)
PyRulez

@PyRulez ฉันคิดว่าหมายเลขของฉันถูกต้องเพราะโดยทั่วไปแล้วจะทำซ้ำฐาน 126 จำนวนมากถึง 399 หลัก ... ฉันคิดว่าคำอธิบายของฉันถูกปิด
Jo King

@ โจกิ้งอาใช่ฉันคิดว่าคำอธิบายเป็นปัญหา คุณเปลี่ยน 397 เป็น 398 ซึ่งทำให้คะแนนของคุณไม่สูงเกินไป คุณอาจประเมินค่าต่ำไป (เนื่องจากคุณใส่ความยาวของสตริง 398 คะแนนเท่านั้น) แต่ก็ไม่เป็นไร
PyRulez

2

เวทมนตร์รูน , 64654 106 ; 122 387 -1 ≈ 2.638 × 10 807การวนซ้ำ

"3X4+kSq'ƃZ,r{1?{1[:1Z%1+:a=+:d=+:3X4+=+:6X2+=+:'€(c*?~1-1kq}͍f1+0Bl1=6*?S1-Skql͗2=4*?{͍]}B͍l1=6*?kS1-Sq]}@

ลองออนไลน์!

การแจ้งเตือน: การแสดงไม่ถูกต้องควรเป็น `` (0x80)

แทนที่จะใช้สแต็กให้ใช้สตริงและตัวดำเนินการสแต็กที่แก้ไขด้วย͍เพื่อแก้ไขสตริงแทนสแต็ก (ดูการแก้ไขก่อนหน้า) เช่นนี้ถ่านแต่ละตัวจะถูก จำกัด ที่ 1 ไบต์ (ช่วง 0-127 ลบด้วยอักขระที่มีปัญหา) แต่มีมากกว่า 3 เท่าของจำนวนมาก (เนื่องจากมีการประมวลผลสำเร็จรูปน้อยกว่าเนื่องจากไม่ต้องข้าม Unicode ที่รวมอักขระเช่น เช่นเดียวกับการประหยัดไบต์อื่น ๆ ) ทำให้ได้จำนวนการทำซ้ำที่สูงขึ้น

หากการเข้ารหัสเป็น endian ใหญ่ที่แท้จริงได้รับอนุญาต (กล่าวคือมีค่าไบต์สูงกว่า 127 โดยไม่มีการแทรก0x00ไบต์) สิ่งนี้สามารถบรรลุการ 251 387 -1 ≈ 4.717 × 10 928ซ้ำ อย่างไรก็ตามการเข้ารหัสละตินของ TIO ป้องกันสิ่งนี้ตามที่ Erik the Outgolfer ระบุไว้ในคำตอบ Python 2 ของเขา ฉันจะต้องตรวจสอบว่ามันทำงานในท้องถิ่นก่อนที่จะอ้างคะแนนนี้

ควรจะสามารถแทนที่f1+0Bด้วย'0B(มีการพิมพ์ที่0x16นั่น) แต่มันก็ต่อสู้กับฉัน (สิ่งที่ไม่ต้องการสาขา / ข้าม / กลับอย่างถูกต้อง) ดังนั้นฉันจึงทิ้งมันไว้คนเดียว สิ่งนี้จะยกระดับโครงสร้างขนาดใหญ่จาก 387 เป็น 388


1

DOS COM ขนาด 49 ไบต์ระยะเวลา 2 ^ 3608

00000000  be 31 01 89 f7 b9 f4 02  f9 ac 14 00 aa 39 ce 72  |.1...........9.r|
00000010  f8 31 c9 b4 3c ba 2b 01  cd 21 89 c3 b4 40 b9 f4  |.1..<.+..!...@..|
00000020  01 ba 00 01 cd 21 b4 3e  cd 21 c3 71 2e 63 6f 6d  |.....!.>.!.q.com|
00000030  00                                                |.|

การประกอบเดิมเพื่อสร้าง:

 BITS 16
 ORG 0100h
   mov si, l
   mov di, si
   mov cx, 500 + 0100h
   stc
n: lodsb
   adc al, 0
   stosb
   cmp si, cx
   jb n
   xor cx, cx
   mov ah, 3ch
   mov dx, f
   int 21h
   mov bx, ax
   mov ah, 40h
   mov cx, 500
   mov dx, 0100h
   int 21h
   mov ah, 3eh
   int 21h
   ret
f: db "q.com", 0
l: db 0

อัญมณีตัวน้อยนี้เขียนระยะต่อไปที่ q.com แทนที่จะเป็นเอาต์พุตมาตรฐานเนื่องจากค่า Null และสิ่งอื่น ๆ ที่เทอร์มินัลไม่สามารถจัดการได้ เทคนิค root quine เทียบเท่ากับการทำให้เป็นสตริงและห้อง payload ใช้เป็นตัวนับ 3608 บิต เนื่องจากวิธีการทำงานของ DOS สถานะเริ่มต้นของตัวนับประกอบด้วยเศษเล็กเศษน้อยจากสิ่งที่อยู่ในหน่วยความจำก่อนที่จะดำเนินการครั้งแรก

อินพุต 49 ไบต์ดั้งเดิมไม่สามารถเข้าถึงได้ดังนั้นหากคุณต้องการให้คะแนน 500 ไบต์ต่อไป


1

C # (Visual C # Interactive Compiler) ตั้งค่าสถานะ: /u:System.Numerics.BigIntegerและ/r:System.Numerics

คะแนน: 10 332

ขอบคุณ JoKing ที่เพิ่มคะแนนของฉันจาก 10 255 * 2 - 1 เป็นตอนนี้!

var i=Parse("0");var s="var i=Parse({0}{2}{0});var s={0}{1}{0};Write(s,(char)34,s,(++i).ToString().Length<333?i:0);";Write(s,(char)34,s,(++i).ToString().Length<333?i:0);

ลองออนไลน์!

คำอธิบาย

เพิ่ม BigInteger ทุกการวนซ้ำจนกว่าความยาวจะใหญ่เกินไปซึ่งในกรณีนั้นเราจะเปลี่ยนกลับเป็นควินินเดิมทันที

//The BigInteger that will be incremented
var i=Parse("0");
//The string that encodes the quine
var s="var i=Parse({0}{2}{0});var s={0}{1}{0};Write(s,(char)34,s,(++i).ToString().Length<333?i:0);";
//Print out the string, with every {0} replaced with quotes and the {1} replaced with the original string
Write(s,(char)34,s,
//And the {2} is replaced to the BigInteger+1 if the BigInteger wouldn't be too long, else 0
(++i).ToString().Length<333?i:0);

1

Python 2 , 500 ไบต์,252219

#coding=L1
s=""""""
for i in range(220-len(s.lstrip("ÿ")))[:219]:s=s[:i]+chr(ord(s[i])%255-~(s[i]in"!$&"))+s[i+1:]
S='#coding=L1\ns="""%s"""\nfor i in range(220-len(s.lstrip("\xff")))[:219]:s=s[:i]+chr(ord(s[i])%%%%255-~(s[i]in"!$&"))+s[i+1:]\nS=%%r;print S%%%%s%%%%S';print S%s%S

โปรดทราบว่ามีบรรทัดใหม่ต่อท้าย มันอาจถูกลบออกไปด้านบนหากปากกาเน้นข้อความบังคับให้เข้าทาง

น่าเสียดายที่คุณไม่สามารถรันโปรแกรมนี้ใน TIO ได้เนื่องจากมันถูกเข้ารหัสเป็นภาษาละติน -1

ด้านบนsมี 219 0x01 ไบต์ หลังจากที่โปรแกรมรันแล้วแหล่งที่มาจะถูกพิมพ์ยกเว้นความแตกต่าง: sได้รับการเพิ่มขึ้นเช่นหมายเลข big-endian ฐาน -252 ดังนั้นอักขระที่อยู่ทางซ้ายสุดของมันจึงถูก "เพิ่ม" เป็น 0x02 ไบต์ที่ 0x00, 0x22, 0x25 และ 0x5C จะถูกหลีกเลี่ยงดังนั้นหากอักขระใด ๆ ของสตริงกลายเป็นหนึ่งในนั้นหลังจากการเพิ่มขึ้นตัวอักขระจะเพิ่มขึ้นอีกครั้ง

  • 0x00 (null): ไฟล์ต้นฉบับ Python ไม่สามารถมีอักขระเป็นโมฆะ
  • 0x22 ( "): มีอันตรายจาก 0x22 ไบต์สามแถวที่อยู่ในแถวนั่นคือ"""หรืออักขระสุดท้ายของสตริงกลายเป็น"ดังนั้นสตริงจะถูกปิดก่อนเวลาอันควร
  • 0x25 ( %): printf เหมือนสตริงการจัดรูปแบบถูกนำมาใช้ก่อนที่จะเสร็จสิ้นการโครงกระดูกควิน, ดังนั้น%ไม่ติดกับอีก%ในsจะก่อให้เกิดปัญหา น่าเสียดายที่ไม่สามารถเรียงลำดับการจัดรูปแบบใหม่เพื่อหลีกเลี่ยงข้อแม้นี้ได้
  • 0x5C ( \): มีความเป็นไปได้ที่\จะใช้เป็นเครื่องหมาย Escape ในสตริงแทนที่จะเป็นคำต่อคำดังนั้นจึงหลีกเลี่ยงได้

ดังนั้น 252 จาก 256 ไบต์จึงสามารถใช้งานได้ หากsมี 219 0xFF ( ÿ) ไบต์ก็จะเปลี่ยนกลับเป็น 219 0x01 ไบต์ดังนั้นจึงเสร็จสิ้นรอบ

จากที่กล่าวมาเราได้ 252219 สตริงที่เป็นไปได้ดังนั้นจึงเป็นโปรแกรมจำนวนมากโดยรวม

252219=8067118401622543607173815381864126969021321378412714150085501148172081568355283332551767558738710128769977220628694979838777041634307806013053042518663967641130129748108465109552157004184441957823830340121790768004370530578658229253323149648902557120331892465175873053680188287802536817909195292338112618632542000472094347226540339409672851252596442228662174845397731175044304251123874046626291460659909127172435776359148724655575878680270692451120531744950544969860952702932354413767504109600742385916705785109741289800204288


1

ทำความสะอาด ,2512262.1×10542

  • 251 39ลบการอ้างอิงในText
  • 251 122ฟังก์ชันที่เพิ่มขึ้น golfed
  • 251 128คำนำหน้ารวมกันและสตริงแหล่งที่มาต่อท้าย
  • 251 188ลบการอ้างอิงในGast.GenLibTest

นำเสนอในรูปแบบ xxd เนื่องจาก nonprintables / UTF-8 ไม่ถูกต้อง:

00000000: 6d6f 6475 6c65 2071 3b69 6d70 6f72 7420  module q;import 
00000010: 5374 6445 6e76 3b53 7461 7274 3d28 7325  StdEnv;Start=(s%
00000020: 2830 2c34 3129 2c3f 5b27 0101 0101 0101  (0,41),?['......
00000030: 0101 0101 0101 0101 0101 0101 0101 0101  ................
00000040: 0101 0101 0101 0101 0101 0101 0101 0101  ................
00000050: 0101 0101 0101 0101 0101 0101 0101 0101  ................
00000060: 0101 0101 0101 0101 0101 0101 0101 0101  ................
00000070: 0101 0101 0101 0101 0101 0101 0101 0101  ................
00000080: 0101 0101 0101 0101 0101 0101 0101 0101  ................
00000090: 0101 0101 0101 0101 0101 0101 0101 0101  ................
000000a0: 0101 0101 0101 0101 0101 0101 0101 0101  ................
000000b0: 0101 0101 0101 0101 0101 0101 0101 0101  ................
000000c0: 0101 0101 0101 0101 0101 0101 0101 0101  ................
000000d0: 0101 0101 0101 0101 0101 0101 0101 0101  ................
000000e0: 0101 0101 0101 0101 0101 0101 0101 0101  ................
000000f0: 0101 0101 0101 0101 0101 0101 0101 0101  ................
00000100: 0101 0101 0101 0101 0101 0101 275d 2c73  ............'],s
00000110: 2528 3432 2c39 3939 292c 712c 732c 7129  %(42,999),q,s,q)
00000120: 3b71 3d69 6e63 2721 273b 3f5b 683a 745d  ;q=inc'!';?[h:t]
00000130: 2363 3d68 2b69 6628 616e 7928 283d 3d29  #c=h+if(any((==)
00000140: 6829 5b27 ff09 0c26 5b27 5d29 2702 2727  h)['...&['])'.''
00000150: 0127 3d5b 633a 6966 2863 3e68 2969 643f  .'=[c:if(c>h)id?
00000160: 745d 3b3f 653d 653b 733d 226d 6f64 756c  t];?e=e;s="modul
00000170: 6520 713b 696d 706f 7274 2053 7464 456e  e q;import StdEn
00000180: 763b 5374 6172 743d 2873 2528 302c 3431  v;Start=(s%(0,41
00000190: 292c 3f5b 2727 5d2c 7325 2834 322c 3939  ),?[''],s%(42,99
000001a0: 3929 2c71 2c73 2c71 293b 713d 696e 6327  9),q,s,q);q=inc'
000001b0: 2127 3b3f 5b68 3a74 5d23 633d 682b 6966  !';?[h:t]#c=h+if
000001c0: 2861 6e79 2828 3d3d 2968 295b 27ff 090c  (any((==)h)['...
000001d0: 265b 275d 2927 0227 2701 273d 5b63 3a69  &['])'.''.'=[c:i
000001e0: 6628 633e 6829 6964 3f74 5d3b 3f65 3d65  f(c>h)id?t];?e=e
000001f0: 3b73 3d22                                ;s="

ลองออนไลน์!

เพิ่มขึ้นสตริง 226 ไบต์ผ่านค่าไบต์ทั้งหมดไม่รวม\0, \n, \r, และ'\

เหตุผลที่เราหลีกเลี่ยงตัวละครเหล่านี้คือ:

  • \0 ทำให้คอมไพเลอร์โกรธ
  • \nและ\rไม่สามารถปรากฏใน charlists ได้
  • ' จะจบ charlist
  • \ อาจทำให้เกิดปัญหาหากเกิดขึ้นก่อนที่อักขระที่สามารถหลีกเลี่ยงได้

เมื่อสตริงเป็น\377s ทั้งหมดมันจะล้อมรอบทุก\001s ให้โปรแกรมต้นฉบับ


เอาท์พุท (อย่างน้อยใน TIO) เป็นตัวละครที่มีค่าลำดับ 128 C2 80แต่ประกอบด้วยสองไบต์ สิ่งนี้เหมือนกับพฤติกรรมในเครื่องท้องถิ่นของคุณหรือไม่?
Jo King

1
@ โจกิ้งโอ้ไม่ฉันได้รับหนึ่งไบต์บนเครื่องของฉัน TIO mangles เอาต์พุตเมื่อไม่ถูกต้อง UTF-8 (และอินพุตไฟล์ด้วย)
Feburous

1
@ โจกิ้งฉันเปลี่ยนคำตอบเป็นรูปแบบใหม่ซึ่งทำให้สามารถดูการทำงานที่ถูกต้องของ TIO ได้
Οurous

0

Gol> <> , 70 ไบต์, ซ้ำ 39039000

":1=l8:*6+=S&Q~:'~'=Q~~'H#'||lPaa*5*=?1:1=Q$~$~|:1)lPaa*5*(Q?:|r2ssH##

ว้าวมันต่ำกว่าที่ฉันคิดไว้มาก ... ขั้นตอนต่อไป! ทำให้มีการทำซ้ำมากขึ้น !!!

ลองออนไลน์!


ดูเหมือนจะไม่ลบอะไรเลยเมื่อถึง 500 เพียงผนวก NUL ไบต์
Jo King

มันใช้งานได้จริงหรือ ฉันไม่สามารถรับ "การเพิ่มถ่านล่าสุด" เพื่อทำงาน
เท่านั้น

@ ASCII- เท่านั้นตอนนี้ใช้งานได้ขอโทษด้วยก่อนหน้านี้ฉันทำส่วนในขณะที่แก้ไขสิ่งต่าง ๆ ทั้งหมด มันใช้งานได้แล้วขออภัยในความไม่สะดวก !!!
KrystosTheOverlord

@JoKing ไบต์ NUL เป็นกระบวนการลบตอนนี้โปรแกรมควรลบจนกว่าจะเกือบจะหายไปจากนั้นลบ NUL และเพิ่มถ่านสุดท้ายถ้ามันเป็น ~ แล้วมันจะถูกแปลงเป็น '#' กลับมา สู่ปกติ !!!
KrystosTheOverlord
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.