งานของคุณคือการสร้างโปรแกรมที่เพิ่มตัวเลขสุ่มไปยังผลรวมก่อนหน้าในการเปิดไพ่แข่งจำนวนมาก
นักแข่งแต่ละคน (คอลัมน์) เริ่มต้นที่ 0 และเพิ่ม 1 หรือ 0 เข้ากับผลรวมก่อนหน้าในแต่ละขั้นตอนของการแข่งขันจนกว่านักแข่งทุกคนจะถึงคะแนนที่จำเป็นในการชนะ ควรเลือก 1 หรือ 0 โดยการสุ่ม (นิยามมาตรฐานของการสุ่มสามารถดูได้ที่นี่ ) ผลลัพธ์จะแสดงผลลัพธ์ของการแข่งขันโดยแต่ละคอลัมน์แสดงถึงนักแข่งหนึ่งคนในรูปแบบนี้:
>> racers:5,score needed:2
0 0 0 0 0 # all racers start at 0
+ + + + + # add
1 0 0 0 1 # random 1 or 0
= = = = = # equals
1 0 0 0 1 # sum
+ + + + +
0 0 0 0 1
= = = = =
1 0 0 0 2 # winner!
+ + + +
1 1 1 1
= = = =
2 1 1 1
+ + +
1 1 1
= = =
2 2 2 # losers
หมายเหตุ: จะต้องรวมเฉพาะตัวเลข + และ = ในเอาต์พุต
อินพุต
โปรแกรมของคุณจะยอมรับพารามิเตอร์สองตัวต่อไปนี้เป็นอินพุต:
- จำนวนนักแข่ง (คอลัมน์) ซึ่งจะต้องมากกว่าสอง
- คะแนนที่ต้องชนะซึ่งจะต้องมากกว่าหนึ่งคะแนน
นี่คือโค้ดกอล์ฟซึ่งโปรแกรมที่มีจำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะ
แก้ไข: มีคะแนนสูงสุดที่ไม่สามารถบังคับใช้ได้ 9 คะแนน - นี่คือการรักษาความสมบูรณ์ของคอลัมน์ นอกจากนี้ยังสามารถเว้นช่องว่างระหว่างคอลัมน์ในเอาต์พุต