Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Giải thuật] Kiểm tra giao hai đoạn thẳng

    Cho hai đoạn thẳng ABABAB và CDCDCD với tọa độ nguyên. Xác định chúng có giao nhau hay không (kể cả trường hợp chạm đầu mút hoặc chồng lấn một phần). In YES nếu giao, NO nếu không.

    Dùng tích có hướng (cross product) và xử lý trường hợp suy biến (thẳng hàng).

    • Định dạng đầu vào:

      Một dòng (hoặc nhiều dòng) gồm 8 số nguyên: Ax Ay Bx By Cx Cy Dx DyA_x\,A_y\,B_x\,B_y\,C_x\,C_y\,D_x\,D_yAx​Ay​Bx​By​Cx​Cy​Dx​Dy​.

    • Ràng buộc đầu vào:

      ∣tọa độ∣≤109|\text{tọa độ}| \le 10^9∣tọa độ∣≤109.

    • Định dạng đầu ra:

      YES hoặc NO.

    Ví dụ:

    Đầu vào:

    0 0 4 4 0 4 4 0
    

    Đầu ra:

    YES

    Giải thích:

    Đoạn (0,0)-(4,4) và (0,4)-(4,0) cắt nhau tại (2,2) nên YES.

    Đang tải editor...