การนับจำนวนสามเหลี่ยมในรูปภาพเป็นงานที่ใช้กันทั่วไปในการทดสอบสมอง คุณจะได้รับรูปภาพที่มีรูปร่างประกอบด้วยสามเหลี่ยม จากนั้นคุณจะต้องค้นหารูปสามเหลี่ยมที่เป็นไปได้ทั้งหมดในภาพ
งาน
คุณจะได้รับรายการบรรทัดในรูปแบบที่คุณเลือก จากนั้นคุณจะต้องแสดงรายการสามเหลี่ยมที่พบในนั้น
อินพุต
คุณจะได้รับรายชื่อของเส้นแต่ละเส้นกำหนดโดยพิกัดจำนวนเต็มสี่ตัว (เช่นx1 y1 x2 y2
) คุณสามารถเลือกรูปแบบการป้อนข้อมูลตราบใดที่มีการบันทึกไว้อย่างชัดเจน ตัวอย่าง:
0 4 8 1
0 4 9 5
8 1 9 5
2 8 0 4
9 5 2 8
[[0, 4, 8, 1], [0, 4, 9, 5], [8, 1, 9, 5], [2, 8, 0, 4], [9, 5, 2, 8]]
นี่คืออินพุตเดียวกันกับภาพ:
อีกอันหนึ่งพร้อมทางแยก (ในรูปแบบเดียวเท่านั้นเพื่อประหยัดพื้นที่):
[[2, 1, 5, 0], [2, 1, 2, 7], [5, 0, 6, 6], [5, 0, 2, 7], [6, 6, 2, 1], [2, 7, 6, 6]]
เอาท์พุต
คุณต้องแสดงรายการของสามเหลี่ยมทั้งหมดซึ่งแต่ละอันกำหนดโดยพิกัดจุดลอยตัวหกจุด (เช่น. x1 y1 x2 y2 x3 y3
) ในภาพที่ระบุโดยอินพุต สิ่งเหล่านี้อาจไม่ใช่จำนวนเต็มเนื่องจากเส้นอาจตัดกันที่จุดใดก็ได้ คุณสามารถเลือกรูปแบบผลลัพธ์ตราบใดที่มีการบันทึกไว้อย่างชัดเจน ตัวอย่างเอาต์พุตสำหรับอินพุตตัวอย่างด้านบน:
0 4 8 1 9 5
0 4 9 5 2 8
[[0, 4, 8, 3, 9, 5], [0, 4, 9, 5, 2, 8]]
[[2, 1, 5, 0, 2, 7], [2, 1, 5, 0, 6, 6], [5, 0, 6, 6, 2, 7], [2, 1, 6, 6, 2, 7], [2, 1, 5, 0, 3.674, 3.093], [5, 0, 6, 6, 3.674, 3.093], [6, 6, 2, 7, 3.674, 3.093], [2, 7, 2, 1, 3.674, 3.093]]
คุณอาจคิดว่า
ไม่มีกรณีขอบที่เส้นข้ามตัดกัน แต่ไม่มีบรรทัดใด ๆ เช่น
[[0, 9, 1, 8], [1, 8, 2, 9], [2, 9, 3, 8], [3, 8, 4, 9], [4, 9, 0, 9]]
ไม่มีมุมใดเกิน 179 องศา
[[0, 0, 0, 1], [0, 1, 0, 2], [0, 2, 0, 0]]
กฎระเบียบ
- คุณสามารถใช้ภาษาใดก็ได้ที่คุณต้องการ
- ไม่ต้องใช้ทรัพยากรภายนอก
- ช่องโหว่มาตรฐานใช้
เกณฑ์การให้คะแนน
นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ
[0,0],[1,0],[2,0],[1,2]
A "รูปสี่เหลี่ยมสามมิติ" ที่มีมุมหนึ่ง 180 องศา ไม่มีรูปสามเหลี่ยมหรือสามเหลี่ยม 1 รูป?
[0,9],[1,8],[2,9],[3,8],[4,9]
จริง ๆ แล้วเป็น W ที่มีเส้นลากผ่านด้านบน นั่นคือไม่มีสามเหลี่ยมหรือ 2 สามเหลี่ยม?