คำนวณพื้นที่ของรูปหลายเหลี่ยม
แรงบันดาลใจจากวิดีโออัลกอริทึมเชือกผูกรองเท้า
งาน
งานของคุณคือการสร้างโปรแกรมหรือฟังก์ชั่นที่คำนวณพื้นที่ของรูปหลายเหลี่ยม โปรแกรมหรือฟังก์ชั่นถูกกำหนดตามคำนิยามเริ่มต้นในเมตาดาต้า
อินพุต
คุณจะได้รับพิกัด X และ Y ของแต่ละจุดยอดของรูปหลายเหลี่ยม คุณสามารถรับอินพุตเป็นรายการของ tuples ( [[x1, y1], [x2, y2], etc]
), เมทริกซ์หรือรายการแบน ( [x1, y1, x2, y2, etc]
) อนุญาตให้มีสองรายการประกอบด้วยx
และy
พิกัดตามลำดับ จุดยอดมีหมายเลขทวนเข็มนาฬิกาและจุดสุดยอดแรกจะเหมือนกับจุดสุดยอดที่ให้ไว้ดังนั้นปิดรูปหลายเหลี่ยม
หากคุณต้องการคุณสามารถป้อนข้อมูลโดยไม่มีจุดสุดยอดครั้งสุดท้าย (ดังนั้นรับแต่ละพิกัดเพียงครั้งเดียว)
คุณสามารถสันนิษฐานได้ว่าขอบของรูปหลายเหลี่ยมไม่ได้ตัดกัน คุณสามารถสันนิษฐานได้ว่าจุดยอดทั้งหมดมีพิกัดจำนวนเต็ม
เอาท์พุต
พื้นที่ของรูปหลายเหลี่ยม อนุญาตวิธีการส่งออกมาตรฐานทั้งหมด หากภาษาของคุณไม่อนุญาตให้มีการหารแบบลอยตัวและวิธีแก้ปัญหาจะไม่ใช่จำนวนเต็มคุณได้รับอนุญาตให้ส่งคืนเศษส่วน ไม่จำเป็นต้องทำให้เศษส่วนเรียบง่ายดังนั้น2/4
จะอนุญาตให้ส่งคืนได้
เกณฑ์การชนะ
รหัสที่สั้นที่สุดชนะ!
กรณีทดสอบ
[[4,4],[0,1],[-2,5],[-6,0],[-1,-4],[5,-2],[4,4]]
55
[[1,1],[0,1],[1,0],[1,1]]
0.5
1/2
[x1, x2, x3], [y1, y2, y3]
อนุญาตให้ป้อนข้อมูลเหมือนหรือไม่