ได้รับการตีเข่าที่มีลูกศรน่าจะเป็นอาการบาดเจ็บของทางเลือกในขณะนี้ ดังนั้นฉันขอเสนอความท้าทายกอล์ฟต่อไปนี้
คุณมีนักผจญภัยที่มีลักษณะเช่นนี้:
O
/|\
/ | \
|
|
/ \
/ \
รับไฟล์ข้อความที่มีหนึ่งธนู (วาดเป็น}
สัญลักษณ์) ชุดของกำแพง (วาดเป็น#
สัญลักษณ์) และนักผจญภัยคนหนึ่งเขียนรหัสที่เล็กที่สุดที่คำนวณมุมและความเร็วเริ่มต้นที่คุณควรยิงธนูเพื่อตี เขาที่หัวเข่า
สมมติว่าต่อไปนี้:
- อักขระแต่ละตัวในไฟล์คือ 0.5 x 0.5 เมตร
- ลูกศรถูกไล่ออกจากศูนย์กลาง
}
ของ0.25m, 0.25m
- แรงโน้มถ่วงคือ
10ms^-2
- ลูกศรมีน้ำหนัก
0.1kg
- Arrow เป็นจุดเช่นการชนเกิดขึ้นเฉพาะเมื่อพิกัดของลูกศรเข้าสู่หนึ่งในบล็อก
- ความเร็วเริ่มต้นสูงสุดคือ
50m/s
- มุมอาจอยู่ระหว่าง 0 (ตรงขึ้น) และ 180 (ตรงลง)
- การชนส่วนใดส่วนหนึ่งของขาของนักผจญภัยนั้นถือเป็นการชนที่หัวเข่า
- กำแพง (
#
ตัวอักษร) ใช้บล็อก 0.5 มม. 0.5 มม. ทั้งหมดหนึ่งบล็อก - ลูกศรสามารถเดินทางข้าม "ด้านบน" ของไฟล์ได้ แต่ไม่มีสิ่งใดที่จะหยุดอินพุตจากการเริ่มต้นด้วยเพดานของ
#
อักขระ - คุณไม่สามารถเจาะกำแพงด้วยลูกธนู
- ไม่อนุญาตให้มีการชนส่วนอื่นใดของนักผจญภัย!
- คุณควรแสดงข้อผิดพลาดหากไม่สามารถตีเขาที่หัวเข่าได้
อินพุตตัวอย่าง:
#
} O
# /|\
/ | \
# |
# |
/ \
/ \
อย่าลังเลที่จะถามคำถามหากคุณต้องการ :)
#############
...