#2785. 栅栏行动

栅栏行动

题目描述

约翰建造了N(1≤\red{N(1≤}N≤\red{N≤}50000)\red{50000)}个栅栏来与牛同乐.第i\red{i}个栅栏的z\red{z}坐标为[Ai.,\red{[Ai.,}Bi](\red{Bi](}−100000≤\red{-100000≤}Ai<Bi≤\red{Ai<Bi≤}105)\red{10^5)},y\red{y}坐标为i\red{i}.牛棚的外栏即x\red{x}轴,原点是牛棚的门.奶牛们开始处于(S,\red{(S,}N)\red{N)},她们需要回到牛棚的门(下图中用"∗\red{*}’表示).

约翰的初衷是为了给奶牛们练习跳跃,但是奶牛们似乎更愿意四蹄着地,慢慢她沿着栅栏走.当她们走到栅栏的尽头,就会朝着牛棚的个栏方向(即y\red{y}轴负方向)行走, 直到碰上另一条栅栏或是牛棚外栏.

这时候她们便要选择继续向左走,还是向右走.奶牛们希望走的路程最短.由于可方向的路程一定,你只需求出z\red{z}方向走的最短路程,使奶牛回到原点.

输入格式

第1\red{1}行:N,\red{N,}S(−100000≤\red{S(-100000≤}S≤\red{S≤}100000)\red{100000)}.

第2\red{2}到N+1\red{N+1}行:每行2\red{2}个整数Ai,\red{Ai,}Bi,\red{Bi,}(−100000≤\red{(-100000≤}Ai≤\red{Ai≤}Bi≤\red{Bi≤}100000)\red{100000)}.

输出格式

最小的x\red{x}方向的步数

样例

输入样例

4  0
-2  1
-1  2
-3  0
-2  1

输出样例

4

提示

img