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
Để 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ả