Loading Now

segmentAndRectangle

Đoạn thẳng được gọi là cắt hình chữ nhật nếu đoạn thẳng và hình chữ nhật có ít nhất một điểm chung. Hãy xác định xem một đoạn thẳng có cắt hình chữ nhật hay không, biết tọa độ điểm bắt đầu và điểm kết thúc của đoạn thẳng, tọa độ đỉnh trái trên và đỉnh phải dưới của hình chữ nhật.

Các tọa độ được biểu diễn dưới dạng mảng:

  • seg: lần lượt là hoành độ và tung độ của điểm bắt đầu, hoành độ và tung độ của điểm kết thúc.
  • rec: lần lượt là hoành độ và tung độ của đỉnh trái trên, hoành độ và tung độ của đỉnh phải dưới. 

Ví dụ:

  • Với seg = [4,9,11,2]rec = [1,5,7,1], output segmentAndRectangle(seg,rec) = false.

     Hình minh họa:

  • Với seg = [4,9,6,3]rec = [1,5,7,1], output segmentAndRectangle(seg,rec) = true.

Đầu vào/Đầu ra:

  • [Thời gian chạy] 0.1s (C++), 0.6s (Java, C#), 0.8s (Python, JavaScript, Go)
  • [Đầu vào] array.integer seg, array.integer rec
    seg.size = rec.size = 4
    -106 ≤ seg[i],rec[i] ≤ 106
  • [Đầu ra] boolean
    True nếu đoạn thẳng cắt hình chữ nhật, False nếu không cắt.

Post Comment

Contact