Lostเป็นภาษาการเขียนโปรแกรม 2 มิติซึ่งตำแหน่งเริ่มต้นและทิศทางของ ip นั้นสุ่มทั้งหมด
สิ่งนี้ทำให้ยากมากที่จะทำให้โปรแกรมที่กำหนดขึ้นได้ยาก อย่างไรก็ตามวันนี้เราไม่ได้เขียนโปรแกรมที่กำหนดขึ้นมาเรากำลังเขียน RNG
เขียนโปรแกรม Lost ที่ไม่มีอินพุตและเอาต์พุตเป็นตัวเลขหลักเดียว (0,1,2,3,4,5,6,7,8 หรือ 9) โดยมีตัวเลขทั้งหมดที่มีความน่าจะเป็นเท่ากับเอาท์พุท เนื่องจากตำแหน่งและทิศทางเริ่มต้นของ Lost เป็นเพียงแหล่งกำเนิดของการสุ่มเท่านั้นวิธีเดียวในการทำเช่นนี้คือให้ทุกตำแหน่งในแหล่งที่มาของคุณส่งออกตัวเลขที่แตกต่างจาก 0 ถึง 9 โดยมีจำนวนเท่ากันออกแต่ละหลัก
คุณสามารถคำนวณความน่าจะเป็นของแต่ละหลักโดยใช้การ-Qตั้งค่าสถานะและไพพ์ลงในสคริปต์หลามนี้
import sys
a=sys.stdin.read().split()[:-1]
for x in range(10):print x,':',a.count(`x`)
print[x for x in a if x not in list("1234567890")]
นี่คือcode-golfดังนั้นคำตอบจะได้คะแนนเป็นไบต์โดยไบต์น้อยจะดีขึ้น
ภาพรวมของ Lost
สิ่งที่ขาดหายไปคือการห่อหุ้มภาษา IO 2D โดยนัยซึ่งเอามาจากรูปแบบของไคลน์ นี่คือสูตรโกงอย่างรวดเร็วของคำสั่งที่หายไป
\,/,|กระจกทรัพย์สินทางปัญญา<,^,>,vคะแนน IP ในทิศทางที่[สะท้อนไอพีถ้ามันเคลื่อนไปทางตะวันออก; จะกลายเป็น]ถ้า IP เคลื่อนที่ในแนวนอน]สะท้อนไอพีถ้ามันเคลื่อนไปทางตะวันตก; จะกลายเป็น[ถ้า IP เคลื่อนที่ในแนวนอน!ข้ามการดำเนินการถัดไป?ดึงออกจากด้านบนของสแต็กและกระโดดถ้าไม่เป็นศูนย์:ทำซ้ำส่วนบนสุดของสแต็ก$สลับสองรายการบนสุดของสแต็ก(ดึงข้อมูลจากสแต็กและดันไปยังขอบเขต)ดึงข้อมูลจากขอบเขตและส่งไปยังสแต็ก0-9กด n ไปด้านบนสุดของสแต็ก"เริ่มต้นและสิ้นสุดตัวอักษรสตริง ในระหว่างคำสั่งตัวอักษรสตริงจะไม่ถูกเรียกใช้และแทนที่ค่าอักขระของพวกเขาจะถูกผลักไปยังกอง+เพิ่มตัวเลขสองอันดับแรก*ทวีคูณตัวเลขสองอันดับแรก-คูณด้านบนด้วย -1%ปิดความปลอดภัย#เปิดความปลอดภัย@สิ้นสุดการดำเนินการหากความปลอดภัยปิด (เริ่มต้น)
[]ทำหน้าที่เป็นประตู<>ชี้ไปในทิศทางและ()จัดเก็บและเรียกคืนจากขอบเขต ขอบเขตที่ใช้ในการจัดเก็บค่า
@หรือมีการใช้งานอื่น ๆ becomes ] if the ip is moving horizontallyเกี่ยวกับวงเล็บฉันไม่เข้าใจส่วนนี้: การเคลื่อนที่ไปทางทิศตะวันออกก็อยู่ในแนวนอนด้วยใช่ไหม