ฉันคิดว่าทุกคนคุ้นเคยกับปาเป้าบางคนไม่เข้าใจคะแนนดังนั้นสำหรับคนเหล่านี้ที่นี่มีลิงก์ที่มีประโยชน์
คณะกรรมการ
สามารถเปรียบเทียบ dartboard กับการตัดวงกลมใน 20 ชิ้น แต่ละชิ้นแบ่งออกเป็น 4 ส่วน
- วงแหวนรอบนอกขนาดเล็กที่เรียกว่า double (points x2)
- แหวนขนาดใหญ่ที่เรียกว่าเดี่ยว (คะแนน x1)
- วงแหวนขนาดเล็กอีกอันหนึ่งเรียกว่าสามเท่า (คะแนน x3)
- วงแหวนขนาดใหญ่อีกอันหนึ่งเรียกว่าซิงเกิล (คะแนน x1)
ในช่วงกลางของบอร์ดจะมีวงแหวนเพิ่มอีก 2 อันสีเขียวและสีแดง (บอร์ดแบบคลาสสิก)
- วงแหวนสีแดงตรงกลางของกระดานเรียกว่าเป้าหรือกระทิงคู่และดีสำหรับ 50 คะแนน อันนี้ถือว่าเป็นสองเท่าและเพราะมันอนุญาตให้เช็คเอาต์กับมัน
- แหวนสีเขียวที่เรียกว่าวัวกระทิงตัวเดียวหรือเพียงแค่ 25 ตัวและนับเป็นหนึ่งเดียว
ท้าทาย
ค้นหาความเป็นไปได้ในการชำระเงินทั้งหมดที่มี 3 ลูกดอกหรือน้อยกว่า
ผู้ใช้สามารถป้อนจำนวนเต็มและคุณจะต้องตรวจสอบว่าเป็นไปได้ที่จะได้รับคะแนน 0 กับ 3 ลูกดอก (หรือน้อยกว่า)
ตัวอย่าง
ตัวอย่างที่ 1:
Input: 170
Output: T20, T20, Bullseye
ตัวอย่างที่ 2:
Input: 6
Output: D3;
S3,S1,D1;
S2,D2;
S2,S2,D1;
D2,D1;
S4,D1;
D1,D1,D1;
S1,S1,D2;
T1,S1,D1;
ตัวอย่างที่ 3:
Input: 169
Output: No possible checkout!
กฎระเบียบ
- กฎลูกดอกพื้นฐานคุณต้องจบด้วย double (วงแหวนรอบนอกของกระดานหรือเป้า)
- ไม่มีการใช้ทรัพยากรภายนอก
- อนุญาตการเข้ารหัสที่เป็นไปได้อย่างหนัก แต่จำไว้ว่านี่คือ codegolf จะไม่ทำให้รหัสของคุณสั้น;)
- เซลล์ที่ถูกโจมตีจะปรากฏในรูปแบบ C + N โดยที่ C = T สำหรับ Triple, D สำหรับ double และ S สำหรับ single
- เป้าสามารถเรียกว่าเป้าหรือ DB, DBull หรือสิ่งที่คล้ายกัน
การชำระเงินที่เป็นไปได้
เพื่อให้คุณเริ่มต้นได้การชำระเงินที่เป็นไปได้สูงสุดคือ 170
ไม่สามารถทำได้ 169,168,166,165,163,162,159 ลูกใน 3 ลูกดอก
เช็คเอาต์ต่ำสุดที่เป็นไปได้คือ 2
นอกจากนี้
นี่ไม่ใช่ข้อกำหนดเพิ่มในความเป็นไปได้ที่จะแสดงเช็คเอาต์ที่เป็นไปได้ทั้งหมดสำหรับคะแนนทั้งหมด โดยพื้นฐานเพราะฉันสงสัยว่ามีความเป็นไปได้ที่จะรวมกันจำนวนมาก: P
ผู้ชนะจะได้รับรหัสที่สั้นที่สุด
การเข้ารหัสที่มีความสุข
