คำนิยาม
"สามเหลี่ยมจำนวนเต็ม" คืออันที่มีพิกัดจำนวนเต็ม ตัวอย่างเช่นสามเหลี่ยมต่อไปนี้เป็นสามเหลี่ยมจำนวนเต็ม:
(0, 0), (0, 1), (1, 2) with perimeter 1 + sqrt(2) + sqrt(5) ≈ 4.650.
งาน
เป้าหมายของความท้าทายนี้คือการนับรูปสามเหลี่ยมจำนวนเต็มทั้งหมด (ไม่เกินความสอดคล้อง) ด้วยขอบเขตน้อยกว่า n
อินพุตและเอาต์พุต
อาร์กิวเมนต์จะได้รับเป็นจำนวนเต็มและผลลัพธ์ควรเป็นจำนวนของรูปสามเหลี่ยมที่มีเส้นรอบวงน้อยกว่าการโต้แย้ง
ตัวอย่าง
สามเหลี่ยมจำนวนเต็มที่เล็กที่สุดโดยขอบเขตจะสอดคล้องกับ
(0, 0), (0, 1), (1, 0) which has perimeter 2 + sqrt(2) ≈ 3.414
ที่เล็กที่สุดถัดไปคือ:
(0, 0), (0, 1), (1, 2) with perimeter 1 + sqrt(2) + sqrt(5) ≈ 4.650,
(0, 0), (0, 2), (1, 1) with perimeter 2 + 2sqrt(2) ≈ 4.828,
(0, 0), (0, 2), (1, 0) with perimeter 3 + sqrt(5) ≈ 5.236, and
(0, 0), (1, 2), (2, 1) with perimeter sqrt(2) + 2sqrt(5) ≈ 5.886
กรณีทดสอบ:
a(1) = 0
a(2) = 0
a(3) = 0
a(4) = 1
a(5) = 3
a(6) = 5
a(7) = 11
a(8) = 18
a(9) = 29
a(10) = 44
a(12) = 94
a(20) = 738
a(30) = 3756
a(40) = 11875
ฉันมีพิกัดสำหรับสามเหลี่ยมแต่ละรูปในส่วนสำคัญนี้
คำเตือน
ขอให้สังเกตว่าสามเหลี่ยมที่ไม่สอดคล้องกันสองรูปแบบสามารถมีขอบเขตเดียวกัน
(0, 0), (0, 3), (3, 0) and (0, 0), (0, 1), (3, 4) both have perimeter 6 + 3sqrt(2).
นอกจากนี้ยังเก็บไว้ในใจว่าความไม่เท่าเทียมกันเป็นอย่างเข้มงวด ; สามเหลี่ยมพีทาโกรัส 3-4-5 ควรนับด้วย (13) ไม่ใช่ (12)
เกณฑ์การให้คะแนน
นี่คือรหัส - กอล์ฟ - รหัสที่สั้นที่สุดชนะ!