Codington Crescent [ซ้ำ]

Aug 21 2020

มาดูกันว่าจะเป็นอย่างไร

หากคุณเคยฟังรายการวิทยุ "ฉันขอโทษฉันไม่มีเงื่อนงำ" คุณคงเคยได้ยินเกมที่ชื่อว่า "Mornington Crescent" สำหรับผู้ที่ยังไม่เคยเล่นเกมนี้เป็นเกมที่ผู้เล่นตั้งชื่อสถานีแบบสุ่มบนเครือข่ายรถไฟใต้ดินลอนดอน คนแรกที่ชื่อ "Mornington Crescent" เป็นผู้ชนะในเกมนี้ 1

ในประเภทเดียวกันของจิตวิญญาณเป็นเกมคลาสสิกวิทยุผมนำเสนอให้คุณCodington เสี้ยว

ความท้าทาย

Codington Crescentผู้ที่ชนะในความท้าทายนี้เป็นคนแรกที่โพสต์โปรแกรมการทำงานที่พิมพ์สตริงที่แน่นอน

กฎระเบียบ

  1. ผู้เล่นแต่ละคนมีโปรแกรมของตัวเองที่จะเพิ่ม / เปลี่ยนตัวละคร นี้จะเรียกว่าพวกเขาโปรแกรมทำงาน

ด้วยวิธีนี้ลักษณะการผูกคำตอบเพียงอย่างเดียวคือกฎ ทุกคนใช้โปรแกรมวิ่งของตัวเอง ไม่มีใครแชร์โปรแกรมเลย

  1. แต่ละคำตอบ ( เทิร์น ) ต้องเป็นไปตามข้อ จำกัด ของแหล่งที่มาที่กำหนดโดยคำตอบก่อนหน้า เหล่านี้เรียกว่ากฎ แต่ละ varient เวลา 5 ผลัด กฎอยู่ในรูปแบบของแหล่งที่มาที่จำกัด หรือการ จำกัด ชื่อภาษา (แต่ไม่ใช่ทั้งสองอย่าง)
  2. การรันโปรแกรมสามารถเปลี่ยนภาษาระหว่างผลัดกันได้
  3. ผู้ตอบ ( ผู้เล่น ) สามารถเพิ่มหรือเปลี่ยน (แต่ไม่ใช่ทั้งสองอย่าง) ได้มากเท่าที่ต้องการ หรืออีกวิธีหนึ่งคือสามารถเลือกที่จะ "ผ่าน" โดยไม่ต้องเพิ่มกฎใหม่และยังคงนับเป็นเทิร์น นี่อาจเป็นทางเลือกเดียวหากกฎขัดแย้งกัน จำนวนเทิร์นยังคงเพิ่มขึ้นและจะโพสต์ เคล็ดลับสำหรับมือโปร: คุณอาจต้องการทำเครื่องหมายว่า community wiki เพราะไม่ได้เพิ่มอะไรมาก
  4. ในตอนท้ายของแต่ละเทิร์นผู้เล่นจะประกาศกฎใหม่ซึ่งจะครอบคลุม 5 เทิร์นถัดไป กฎต้องมีวัตถุประสงค์และขอแนะนำให้ใช้โปรแกรมการตรวจสอบ TIO นอกจากนี้กฎต้องสามารถนำไปใช้กับทุกภาษา (เช่นPrograms must not error using Python 3.4.2ไม่ใช่กฎที่ถูกต้อง)
  5. เล่นต่อไปจนกว่าโปรแกรมที่ทำงานอยู่จะพิมพ์สตริงเป้าหมาย

กฎเริ่มต้น

ในการเริ่มเกม 5 เทิร์นแรกต้องปฏิบัติตามกฎต่อไปนี้:

  1. อาจไม่สามารถพิมพ์Codington Crescentได้
  2. โปรแกรมที่รันจะต้องไม่สามารถลดทอนได้ (การชี้แจงไม่ใช่การเปลี่ยนแปลงกฎ: ไม่สามารถทำให้เกิดขึ้นได้ในกรณีนี้หมายความว่าโปรแกรมจะไม่สร้างผลลัพธ์ของโปรแกรมทั้งหมดหากอักขระจากโปรแกรมทั้งหมดถูกลบออกเช่นไม่มีโปรแกรมที่มีเอาต์พุตเริ่มต้นเดียวกันกับที่ สามารถสร้างได้โดยการลบอักขระออกจากโปรแกรมต้นฉบับ)
  3. ความยาวโปรแกรมสูงสุดคือ 20 ไบต์

ตัวอย่างกฎ

นี่เป็นเพียงตัวอย่างของสิ่งที่คุณสามารถเพิ่มเป็นกฎในการท้าทายได้ พวกเขาใช้ไม่ได้เว้นแต่จะมีใครตัดสินใจใช้

  • ภาษาต้องมีอักขระอย่างน้อย 3 ตัวในชื่อ

  • ตัวอักษรตัวแรกและตัวสุดท้ายของโปรแกรมที่กำลังทำงานจะต้องเว้นวรรค

  • โปรแกรมที่รันต้องมีจำนวนไบต์เท่ากัน

  • ภาษาต้องอยู่ในหมวดที่ใช้ได้จริงใน TIO

  • โปรแกรมที่รันต้องมีขนาดไม่เกิน 30 ไบต์

กฎการผูกมัดคำตอบพิเศษ

  • คุณไม่สามารถตอบสองครั้งติดต่อกัน คนอื่นต้องตอบก่อนที่คุณจะไปอีก
  • ภาษาต่างๆต้องอยู่ใน Try It Online จึงจะเป็นคำตอบที่ถูกต้อง

1 เกมดั้งเดิมของ Mornington Crescent ไม่มีกฎจริงๆ ... เป็นกิจกรรมที่ดูเหมือนว่าเป็นเกมที่ซับซ้อน

Pro-tip: จัดเรียงตามลำดับที่เก่าแก่ที่สุดเพื่อให้ได้คำตอบที่สอดคล้องกันมากขึ้น

เทมเพลตคำตอบ

# [Language], turn number [your turn]

    <code>

[Try it online link]
[prev answer link] 
## Rules

- Rule (n turns left)
- Rule (n turns left)
- Rule (n turns left)
```

คำตอบ

4 DominicvanEssen Aug 21 2020 at 19:55

R , 43 ไบต์, จุดรหัสรวม59 ^ 2 , เลี้ยวหมายเลข 6

การส่งครั้งก่อน (เทิร์น 4)

เทิร์นนี้: เพิ่ม 23 ตัวอักษร = 'Codington' + 'Crescent' # H

`+`=cat;'Kodington'+'Crescent'#@'C"pr'+'nt'

ลองออนไลน์!

กฎ

  • โปรแกรมไม่สามารถพิมพ์ Codington Crescent ได้ (หมดอายุแล้ว)
  • โปรแกรมที่รันจะต้องไม่สามารถลดทอนได้ (หมดอายุ)
  • ความยาวโปรแกรมสูงสุดคือ 20 ไบต์ (หมดอายุ)
  • โปรแกรมต้องมีสตริงย่อย C "pr (เทิร์นสุดท้าย)
  • โปรแกรมต้องไม่มีวงเล็บใด ๆ (1 เลี้ยวซ้าย)
  • ความยาวโปรแกรมขั้นต่ำ 19 ไบต์ (2 เลี้ยวซ้าย)
  • โปรแกรมต้องไม่มีอักขระเว้นวรรค (3 เลี้ยวซ้าย)
  • ผลรวมจุดรหัสจะต้องเป็นกำลังสองสมบูรณ์ที่มากกว่า 1444 (4 เลี้ยวซ้าย)
  • โปรแกรมสามารถแสดงผล 'Codington Crescent' ได้ก็ต่อเมื่อไม่สามารถวัดผลได้และการแก้ไข (เพิ่มเติมหรือเปลี่ยนแปลง) ไม่เกิน 8 อักขระจากคำตอบที่ส่งไปก่อนหน้านี้ (5 เลี้ยวซ้าย)
4 DominicvanEssen Aug 24 2020 at 19:38

R , 158 ไบต์, จุดรหัสรวม105 ^ 2 , เลี้ยวหมายเลข 9

การส่งครั้งก่อน (ผลัดที่ 6)

เทิร์นนี้: เพิ่มตัวอักษร 115 ตัว: 'a = "; b =") "; k =" ZPEJOHUPO! ZSFTDFOU "[ \156\143ha\162(a) == 48]; \143a\164( \143ha\162\164\162(" BZ "," aw \ 40 \ 103 "," M ")) '

a="`+`=cat;'Kodington'+'Crescent'#@'C";b=")pr'+'nt'";k="ZPEJOHUPO!ZSFTDFOU"[`\156\143ha\162`(a)==48];`\143a\164`(`\143ha\162\164\162`("B-Z","a-w\40\103","M"))

ลองออนไลน์!

ความคิดเห็น: กฎของpppery (เทิร์นที่ 8) การห้ามไม่ให้โปรแกรมแสดงผลอักขระใด ๆ ของตัวเองได้ค่อนข้างมีโอกาสที่ฉันจะชนะในเทิร์นนี้หรือแม้แต่เทิร์นถัดไปเนื่องจากโปรแกรมก่อนหน้าของฉัน (จากเทิร์น 6) เต็มไปด้วยในตอนนี้ - อักขระต้องห้ามและฉันไม่ได้รับอนุญาตให้แก้ไขโค้ดของฉัน (เพื่อกำจัดออก) ในทางเดียวกันกับการเพิ่มเข้าไป (เพื่อใช้วิธี 'พิมพ์ X โดยไม่มี X' ใหม่)
ดังนั้นสำหรับเทิร์นนี้ฉันกำลังพยายาม (1) เริ่มครึ่งแรกของการสร้างโปรแกรมของฉันภายใต้กฎปัจจุบันซึ่งจะต้องดำเนินการต่อในเทิร์นถัดไปก่อนที่จะพร้อมที่จะชนะและ (2) เพิ่มกฎ เพื่อหยุดผู้เข้าแข่งขันคนอื่น ๆ ในปัจจุบัน

Razetime , petStormและSzewczykล้วนต้องการการเปลี่ยนแปลงในโปรแกรมปัจจุบันมากกว่า> 8 ตัวก่อนจึงจะสามารถชนะได้ ปัจจุบันppperyมีโปรแกรมที่ต้องเปลี่ยนตัวอักษรเพียง 2 ตัวในการพิมพ์Codington Crescentโดยปล่อยให้ 6 อักขระว่างเพื่อให้เป็นไปตามกฎจุดโค้ดที่สมบูรณ์แบบซึ่งน่าจะเพียงพอ อย่างไรก็ตามวิธีการเพิ่ม+25อักขระที่พิมพ์ทั้งหมดหมายความว่าอักขระ (ช่องว่าง) ถูกเข้ารหัสโดยไบต์ที่ไม่สามารถพิมพ์ได้ ยิ่งไปกว่านั้นหาก+25มีการเปลี่ยนแปลงตัวละครอื่น ๆ > 8 ตัวจะต้องเปลี่ยนเพื่อรับCodington Crescentอีกครั้ง ดังนั้นฉันคิดว่า (หวังว่า) เพียงแค่ จำกัด โค้ดให้เป็น ASCII ที่พิมพ์ได้ก็เพียงพอที่จะบล็อกโปรแกรมนี้ (อย่างน้อยก็ในตอนนี้)

กฎ:

  • โปรแกรมต้องไม่มีอักขระเว้นวรรค (เทิร์นสุดท้าย)
  • ผลรวมของจุดรหัสต้องเป็นกำลังสองสมบูรณ์ที่มากกว่า 1444 (เลี้ยวซ้าย 1 ครั้ง)
  • โปรแกรมสามารถแสดงผล 'Codington Crescent' ได้ก็ต่อเมื่อพวกเขาไม่สามารถวัดผลได้และการปรับเปลี่ยน (เพิ่มเติมหรือเปลี่ยนแปลง) สูงสุด 8 อักขระจากคำตอบที่ส่งไปก่อนหน้านี้ (2 เลี้ยวซ้าย)
  • โปรแกรมไม่สามารถแสดงอักขระใด ๆ ที่มีอยู่ในซอร์สโค้ด (4 เลี้ยวซ้าย)
  • โปรแกรมต้องไม่มีไบต์ที่สอดคล้องกับอักขระ ASCII ที่ไม่สามารถพิมพ์ได้ (นั่นคือ <32 หรือ> 126) (5 เลี้ยวซ้าย)
3 Noname Aug 21 2020 at 15:32

ไอโอเลี้ยวหมายเลข 1

"MoC"print

ลองออนไลน์!

ลิงค์คำตอบก่อนหน้า

กฎ

  • เทิร์นอาจไม่พิมพ์ Codington Crescent (1 เลี้ยวซ้าย)

  • โปรแกรมที่รันจะต้องไม่สามารถลดทอนได้ (1 เลี้ยวซ้าย)

  • ความยาวโปรแกรมสูงสุดคือ 20 ไบต์ (1 เลี้ยวซ้าย)

  • C"prคำตอบของคุณมีการรวมอักขระย่อย Online Verifier (2 เลี้ยวซ้าย)

3 Razetime Aug 21 2020 at 17:47

///เลี้ยวหมายเลข 2

C"prodington 

แก้ไข:เปลี่ยน porgram เพื่อให้พอดีกับแนวทางในการลดทอนไม่ให้กล่าวถึงที่นี่ กฎไม่มีการเปลี่ยนแปลง

ลองออนไลน์!

กฎ

  • โปรแกรมอาจไม่พิมพ์ Codington Crescent (3 เลี้ยวซ้าย)
  • โปรแกรมที่รันจะต้องไม่สามารถลดทอนได้ (3 เลี้ยวซ้าย)
  • โปรแกรมต้องมีสตริงย่อยC"pr(4 เลี้ยวซ้าย)
  • ความยาวโปรแกรมสูงสุดคือ 20 ไบต์ (3 เลี้ยวซ้าย)
  • โปรแกรมต้องไม่มีวงเล็บใด ๆ (5 เลี้ยวซ้าย)
3 pppery Aug 22 2020 at 23:16

str , 25 ไบต์, เลี้ยวหมายเลข 8

`*VKPUN\VU*YLZJLU\`25+p;

สังเกตอักขระที่มองไม่เห็นด้วยจุดรหัส 7 ระหว่างVUและ*Y

กฎ

  • โปรแกรมต้องไม่มีวงเล็บใด ๆ (หมดอายุ)
  • ความยาวโปรแกรมขั้นต่ำ 19 ไบต์ (รอบสุดท้าย)
  • โปรแกรมต้องไม่มีอักขระเว้นวรรค (เลี้ยวซ้าย 1 ครั้ง)
  • ผลรวมจุดรหัสจะต้องเป็นกำลังสองสมบูรณ์ที่มากกว่า 1444 (2 เลี้ยวซ้าย)
  • โปรแกรมสามารถแสดงผล 'Codington Crescent' ได้ก็ต่อเมื่อไม่สามารถวัดผลได้และการแก้ไข (เพิ่มเติมหรือเปลี่ยนแปลง) ไม่เกิน 8 อักขระจากคำตอบที่ส่งไปก่อนหน้านี้ (3 เลี้ยวซ้าย)
  • โปรแกรมไม่สามารถแสดงอักขระใด ๆ ที่มีอยู่ในซอร์สโค้ด (5 เลี้ยวซ้าย)

ลองออนไลน์!

2 DominicvanEssen Aug 21 2020 at 17:58

R , 19 ไบต์เลี้ยวหมายเลข 4

`+`=cat;'C"pr'+'nt'

ลองออนไลน์!

กฎ

  • โปรแกรมอาจไม่พิมพ์ Codington Crescent (1 เลี้ยวซ้าย)
  • โปรแกรมที่รันจะต้องไม่สามารถลดทอนได้ (1 เลี้ยวซ้าย)
  • ความยาวโปรแกรมสูงสุดคือ 20 ไบต์ (1 เลี้ยวซ้าย)
  • โปรแกรมต้องมีสตริงย่อย C "pr (2 เลี้ยวซ้าย)
  • โปรแกรมต้องไม่มีวงเล็บใด ๆ (3 เลี้ยวซ้าย)
  • ความยาวโปรแกรมขั้นต่ำ 19 ไบต์ (4 รอบซ้าย)
  • โปรแกรมต้องไม่มีอักขระเว้นวรรค (5 เลี้ยวซ้าย)
2 KamilaSzewczyk Aug 21 2020 at 18:38

ไอโอเลี้ยวหมายเลข 3

"idoC"print

การส่งต้นฉบับ: Befunge-98 (FBBI) , 19 ไบต์, เทิร์น 3

หมายเหตุ: ไม่ถูกต้องต่อ(การถอดเสียง)

"nidoC"4k,@@@@@C"pr

ลองออนไลน์!

กฎ

  • โปรแกรมอาจไม่พิมพ์ Codington Crescent (2 เลี้ยวซ้าย)
  • โปรแกรมที่รันจะต้องไม่สามารถลดทอนได้ (2 เลี้ยวซ้าย)
  • โปรแกรมต้องมีสตริงย่อยC"pr(3 เลี้ยวซ้าย)
  • ความยาวโปรแกรมสูงสุดคือ 20 ไบต์ (2 เลี้ยวซ้าย)
  • โปรแกรมต้องไม่มีวงเล็บใด ๆ (4 เลี้ยวซ้าย)
  • ความยาวโปรแกรมขั้นต่ำ 19 ไบต์ (5 รอบซ้าย)
1 Noname Aug 21 2020 at 19:45

Io , 19 ไบต์, เลี้ยวหมายเลข 5

"Codin34:::;C"print

ลองออนไลน์!

คำตอบก่อนหน้า

กฎ

  • โปรแกรมอาจไม่พิมพ์ Codington Crescent (1 เลี้ยวซ้าย)
  • โปรแกรมที่รันจะต้องไม่สามารถลดทอนได้ (1 เลี้ยวซ้าย)
  • ความยาวโปรแกรมสูงสุดคือ 20 ไบต์ (1 เลี้ยวซ้าย)
  • โปรแกรมต้องมีสตริงย่อยC"pr(2 เลี้ยวซ้าย)
  • โปรแกรมต้องไม่มีวงเล็บใด ๆ (3 เลี้ยวซ้าย)
  • ความยาวโปรแกรมขั้นต่ำ 19 ไบต์ (4 รอบซ้าย)
  • โปรแกรมต้องไม่มีอักขระเว้นวรรค (5 เลี้ยวซ้าย)
  • ความต้องการ codepoint ผลรวมจะเป็นตารางที่สมบูรณ์แบบที่เป็นมากกว่า 1444. (6 เลี้ยวซ้าย) ตรวจสอบ
1 Razetime Aug 22 2020 at 13:41

///เลี้ยวเลข 7 FARKLE

C"prodington 

นี่คือการย้ายผ่าน ไม่มีการเปลี่ยนแปลง.

ลองออนไลน์!

กฎ

  • โปรแกรมต้องมีสตริงย่อย C "pr (หมดอายุ)
  • โปรแกรมต้องไม่มีวงเล็บใด ๆ (ผลัดสุดท้าย)
  • ความยาวโปรแกรมขั้นต่ำ 19 ไบต์ (1 เลี้ยวซ้าย)
  • โปรแกรมต้องไม่มีอักขระเว้นวรรค (2 เลี้ยวซ้าย)
  • ผลรวมจุดรหัสจะต้องเป็นกำลังสองสมบูรณ์ที่มากกว่า 1444 (เลี้ยวซ้าย 3 ครั้ง)
  • โปรแกรมสามารถแสดงผล 'Codington Crescent' ได้ก็ต่อเมื่อไม่สามารถวัดผลได้และการปรับเปลี่ยน (เพิ่มเติมหรือเปลี่ยนแปลง) ไม่เกิน 8 อักขระจากคำตอบที่ส่งไปก่อนหน้านี้ (เลี้ยวซ้าย 4 ตัว)