ไม่คุณทำได้ดีกว่าไม่ได้ Θ (n2) ในกรณีที่เลวร้ายที่สุด
พิจารณาการจัดเรียงของจุดต่าง ๆ ที่อยู่ในระยะไกล 1จากกันและกัน. (นี่คือการกำหนดค่าที่เป็นไปได้) จากนั้นคุณไม่สามารถทำได้ดีไปกว่าการตรวจสอบทุก ๆ ขอบ โดยเฉพาะอย่างยิ่งหากมีขอบใด ๆ ที่คุณไม่ได้ตรวจสอบฝ่ายตรงข้ามก็สามารถเลือกความยาวของขอบนั้นได้0.9, 1.0, หรือ 1.1; ตัวเลือกทั้งหมดเหล่านี้สอดคล้องกับข้อสังเกตอื่น ๆ ทั้งหมดที่คุณทำและข้อกำหนดของการวัด (เช่นความไม่เท่าเทียมกันของรูปสามเหลี่ยม) ดังนั้นทั้งสามจึงเป็นไปได้ แต่พวกเขาต้องการผลลัพธ์ที่แตกต่างกัน ดังนั้นหากอัลกอริทึมของคุณไม่ตรวจสอบขอบนั้นแล้วส่งออกบางสิ่งฝ่ายตรงข้ามสามารถเลือกความยาวสำหรับขอบที่ไม่ได้ตรวจสอบซึ่งจะทำให้เอาต์พุตของอัลกอริทึมของคุณผิด
อย่างไรก็ตามหากคุณรู้ว่าคะแนนทั้งหมดอยู่ใน Rd (แม้ว่าคุณจะไม่ได้รับพิกัด) แต่ปัญหาก็สามารถแก้ไขได้โดยการวัด O ( ( d+ 1 ) n ) ระยะทางสมมติว่าไม่มีความเสื่อม (ไม่มีส่วนย่อยของ d+ 1 คะแนนร่วมกันคือภาพถ่าย)
โดยเฉพาะการเลือก d+ 1คะแนนแบบสุ่ม สิ่งเหล่านี้จะเป็นจุดยึด กำหนดระยะทางตามเข็มคู่ของพวกเขาคุณสามารถคำนวณพิกัดสำหรับพวกเขาที่สอดคล้องกับระยะทางของพวกเขา ตอนนี้สำหรับทุก ๆ จุดPคำนวณระยะทางจาก Pถึงจุดยึดแต่ละจุด ใช้สมการและระยะทางเหล่านี้คุณสามารถคำนวณตำแหน่งของP สัมพันธ์กับจุดยึดและทำให้พิกัดสำหรับ P. ทำเช่นนี้กับทุกจุดที่ไม่ใช่จุดยึดP. ตอนนี้คุณมีพิกัดสำหรับทุกจุดและคุณสามารถใช้พิกัดเหล่านั้นเพื่อค้นหาจุดศูนย์กลางโดยไม่ต้องถาม oracle เพื่อให้ระยะทางใด ๆ กับคุณมากขึ้น ฉันไม่รู้ว่าขั้นตอนสุดท้ายนี้สามารถทำได้เร็วกว่านี้หรือไม่O(n2) เวลาแต่สามารถทำได้โดยไม่ต้องวัดระยะทางเพิ่มเติมอีก