boolean intersect(Road a, Road b) {
    if (a.slope == b.slope) {
      return false;
    }
    
    double xinter = (b.intercept - a.intercept) / (a.slope - b.slope);
    return (xinter >= a.xstart && xinter <= a.xend && xinter >= b.xstart && xinter <= b.xend);
  }