Khoảng cách giữa hai đoạn thẳng
Xem dạng PDF
Gửi bài giải
Điểm:
0,25 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
64M
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch
Cho hai đoạn thẳng ~L_1~ và ~L_2~, hãy tìm khoảng cách giữa đoạn thẳng ~L_1~ và đoạn thẳng ~L_2~ đó.
Input
Dòng đầu tiên gồm bốn số nguyên dương ~x_1, y_1, x_2, y_2~ (~-10^9 \le x_1, y_1, x_2, y_2 \le 10^9~) lần lượt là toạ độ của hai điểm đầu mút của đoạn thẳng ~L_1~.
Dòng thứ hai gồm bốn số nguyên dương ~x_3, y_3, x_4, y_4~ (~-10^9 \le x_3, y_3, x_4, y_4 \le 10^9~) lần lượt là toạ độ của hai điểm đầu mút của đoạn thẳng ~L_2~.
Output
Gồm một dòng duy nhất là khoảng cách từ đoạn thẳng ~L_1~ đến đoạn thẳng ~L_2~.
Đáp án được tính là đúng nếu sai số không quá ~10^{-6}~.
Sample Input 1
1 1 2 2
2 1 3 0
Sample Output 1
0.707107
Bình luận
cảm ơn sol của bạn
Để tìm khoảng cách giữa hai đoạn thẳng trên mặt phẳng khi biết tọa độ của các đầu mút, bạn có thể làm theo các bước sau:
Bước 1: Kiểm tra xem hai đoạn thẳng có giao nhau không.
Bước 2: Nếu không giao nhau, tính khoảng cách giữa các điểm đầu mút của một đoạn đến đoạn kia.
Bước 3: Tính khoảng cách giữa các đoạn thẳng
Bước 4: Kết quả