MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply TodayYou are given two line segments. Do they cross?

Consider one segment as (x1,y1) to (x2,y2), the other segment as (x3,y3) to (x4,y4). You are given a = [x1 y1; x2 y2]; b = [x3 y3; x4 y4]. Return tf=true if a and b intersect or tf=false if a and b do not touch.

All lines will intersect cleanly at exactly one non-endpoint. That is, they will not nest, overlap, or "kiss" at the endpoints.

Examples

a = [0,0; 1,1]; b = [0,1; 1,0]; tf = true

a = [0,0; 1,0]; b = [0,1; 1,1]; tf = false

22 correct solutions
11 incorrect solutions

Last solution submitted on Jul 21, 2014

1 Comment

Celestino
on 11 Mar 2014

For
a = [0,0; 2,2]; b = [1,1; 3,3];
a = [0,0; 2,2]; b = [2,2; 3,3];

2 Comments