#U1920JG3. Springboards

Springboards

Bessie is in a 2D grid where walking is permitted only in directions parallel to one of the coordinate axes. She starts at the point (0,0)(0,0) and wishes to reach (N,N)(N,N) (1N1091≤N≤109). To help her out, there are PP (1P1051≤P≤105) springboards on the grid. Each springboard is at a fixed point (x1,y1**)(x1,y1) and if Bessie uses it, she will land at a point (x2,y2)**(x2,y2).Bessie is a progress-oriented cow, so she only permits herself to walk up or right, never left nor down. Likewise, each springboard is configured to never go left nor down. What is the minimum distance Bessie needs to walk?

SCORING:

  • Test cases 2-5 satisfy P1000P≤1000.
  • Test cases 6-15 satisfy no additional constraints.

INPUT FORMAT (file boards.in):

The fist line contains two space-separated integers NN and PP.The next PP lines each contains four integers, x1x1, y1y1, x2x2, y2y2, where x1x2x1≤x2 and y1y2.y1≤y2.

All springboard and target locations are distinct.

OUTPUT FORMAT (file boards.out):

Output a single integer, the minimum distance Bessie needs to walk to reach (N,N)(N,N).

SAMPLE INPUT:

3 2
0 1 0 2
1 2 2 3

SAMPLE OUTPUT:

3

Bessie's best path is:

  • Bessie walks from (0,0) to (0,1) (1 unit).
  • Bessie springs to (0,2).
  • Bessie walks from (0,2) to (1,2) (1 unit).
  • Bessie springs to (2,3).
  • Bessie walks from (2,3) to (3,3) (1 unit).

The total walking length of Bessie's path is 3 units.