บทนำ
รับภาพนี้ของสนามเด็กเล่น:
(0,0)
+----------------------+(map_width, 0)
| A |
|-----+-----------+----|
| D | W | B |
|-----+-----------+----|
| C |
+----------------------+(map_width, map_height)
(0, map_height)
แผนที่ทั้งหมดที่เล่นในเกมนั้นคือสี่เหลี่ยมที่มีพิกัดมุม (0,0) และ (map_width, map_height) คะแนนที่มีสิทธิ์ในการวางไข่ศัตรูคือสหภาพ
ความท้าทาย
เขียนโค้ดที่ส่งกลับจุดสุ่ม (x, y) ที่รับประกันว่าจะอยู่ในเอสโค้ดของคุณไม่สามารถแนะนำอคติเพิ่มเติมใด ๆ ซึ่งหมายความว่าความน่าจะเป็นของแต่ละพิกัดจะกระจายอย่างสม่ำเสมอเนื่องจากสมมติฐานที่คุณเลือกในการสร้างแบบสุ่ม | library | dev / urandom) ไม่มีอคติ
โซลูชั่นที่สั้นที่สุดในหน่วยไบต์ชนะ!
อินพุต
คุณจะได้รับจำนวน 6
map_width, map_height, W_top_left_x, W_top_left_y, W_width, W_height
ตัวแปรจำนวนเต็มบวกในการสั่งซื้อ: คุณสามารถสมมติได้ว่า (คำนวณ) พื้นที่ผิวของทุกพื้นที่ (A, B, C, D, W) คือแต่ละ> 10 ดังนั้นจึงไม่มีช่องว่าง / ภูมิภาค
อินพุตตัวอย่าง: 1000, 1000, 100, 100, 600, 400
อินพุต Te ต้องมีค่า 6 ค่าที่อธิบายไว้ข้างต้น แต่สามารถส่งผ่านเป็นจำนวนอาร์กิวเมนต์น้อยลงและในลำดับใด ๆ เช่นการส่งผ่าน(map_width, map_height)
เป็น puple tuple ได้รับอนุญาต สิ่งที่ไม่ได้รับอนุญาตของหลักสูตรคือพารามิเตอร์ที่คำนวณได้เช่นจุดล่างขวาของ W
เอาท์พุต
2 จำนวนเต็มสร้างแบบสุ่ม (x, y) ที่ไหน
หรือ
ความหมายอย่างน้อยหนึ่งในการแสดงออกเชิงตรรกะข้างต้นจะต้องเป็นจริง
ตัวอย่าง
Input Output(valid random samples)
1000 1000 100 100 600 400 10 10
1000 1000 100 100 600 400 800 550
1000 1000 100 100 600 400 800 10
1000 1000 100 100 600 400 10 550
สำหรับรายละเอียดและข้อ จำกัด สำหรับอินพุต / เอาต์พุตโปรดอ้างอิงกฎอินพุต / เอาต์พุตเริ่มต้น
2 randomly generated integers (x, y)