有一个周长为m的圆,我们把某个点位置为起始位置,从起始位置顺时针沿着圆上移动到达的位置的点的坐标等于其移动的距离。例如下图就是一个周长为8的圆以及部分点的坐标。

有n组路径,给出路径的两个端点,可以在两种路径中选择其中一个,比如下图中坐标点1和坐标点3作为路径端点,就有两种路径可以选择。

求这n组端点的所有选择中,覆盖的圆环长度的最小值。
从文件ring.in中读入数据。输入的第一行包含两个整数n、m,分别表示点对的数量和圆的周长。
接下来输入包含n行,每行两个整数a_i、b_i,表示路径两个端点的坐标。
输出到文件ring.out中。输出仅一个数字,即最小覆盖的长度。
3 8 1 7 0 2 3 4
4
当点对选择的路径为7顺时针到1,0顺时针到2,3顺时针到4的路径所覆盖周长的长度最小,为4。如下图。


青少年编程挑战赛