30
อีกาเทียบกับแท๊กซี่
ลองนึกภาพการเดินทางไปยังจุดที่โกหกห่างออกไปในแนวนอนและBห่างออกไปในแนวตั้งจากตำแหน่งปัจจุบันของคุณ หรือพูดอีกอย่างคือเดินทางจากจุดหนึ่งไปยังอีกจุดหนึ่ง คุณต้องเดินทางไกลแค่ไหน? ดูเหมือนว่าเป็นคำถามที่ตรงไปตรงมา แต่คำตอบนั้นขึ้นอยู่กับคนที่คุณถาม หากคุณอีกาและคุณสามารถเดินทางเป็นอีกาบิน , ระยะทางที่เดินทางเป็นเพียงระยะทางยุคลิดไป นี่คือ(0, 0)(a, b)(a, b) sqrt(a^2 + b^2) แต่ถ้าคุณเป็นมนุษย์ที่น่าเบื่อคุณไม่อยากเดินไกลดังนั้นคุณต้องนั่งแท็กซี่ รถแท็กซี่ส่วนใหญ่จะไม่ขับเป็นเส้นตรงไปยังปลายทางของคุณเพราะโดยทั่วไปแล้วพวกเขาจะพยายามอยู่บนถนน ระยะทางที่แท้จริงที่คุณจะต้องเดินทางคือผลรวมของระยะทางแนวตั้งและระยะทางแนวนอน หรือสูตรคือ: abs(a) + abs(b) นี้เรียกว่ารถแท็กซี่ระยะทาง ภาพนี้แสดงให้เห็นถึงความแตกต่างอย่างชัดเจนระหว่างสอง: ในการเดินทางไป(6, 6)อีกาสามารถบินได้บนเส้นสีเขียวและนี่จะให้ระยะทาง6 * sqrt(2)หรือประมาณ 8.49 รถแท็กซี่สามารถใช้เส้นทางสีแดงสีน้ำเงินหรือสีเหลือง แต่พวกเขาทั้งหมดจะใช้เวลา 12 สิ่งนี้นำไปสู่คำถามจริงที่ฉันถาม หากอีกาและรถแท็กซี่ออกจากจุด(0, 0)และเดินทางไปยังจุด(a, b)ใดเส้นทางของรถแท็กซี่จะยาวเท่าไหร่? หรือในศัพท์แสงคณิตศาสตร์มากขึ้น ให้เวกเตอร์สองมิติกำหนดความแตกต่างระหว่าง norm2 ของเวกเตอร์กับ norm1 ของเวกเตอร์ คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่สั้นที่สุดเพื่อตอบคำถามนี้ คุณอาจเลือกที่จะใช้ 'a' และ 'b' เป็นสองอินพุตแยกกันหรือเป็นสองรายการ tuple คุณสามารถนำเข้าและส่งออกในรูปแบบที่เหมาะสม …