### 问题描述
装修工人给一户人家装修。初始时装修工人有从 $1$ 到 $n$ 编号的共 $n$ 个装饰品,装饰品按编号升序自左向右在地上摆放,编号为 $i$ 的装饰品长度为 $a_i$ 。但是这户人家对于装修非常苛刻,他们对于装饰品的长度不太满意,要求装修工人对装饰品进行改造操作。
装修工人有一把长度为 $m$ 的标尺,他将利用这个标尺进行改造工作。他的一次改造操作如下:
装修工人从所有装饰品中任意挑选编号不相同的任意个数的装饰品(设挑选的装饰品的个数为 $k$ ,有 $1\leq{k}\leq{n}$ ),设所挑选的编号为 $i_1,i_2,\dots,i_k$ ,而后装修工人将所有挑选出来的装饰品的长度(用 $a_{i_j}$ 表示)改变为 $a_{i_j }=(a_{i_j}+1)\bmod m$ 。
该人家希望所有装饰品按自左向右的顺序能够实现长度非降序排列。装修工人想请你帮他求出,若要完成主人家的这个要求,他最少需要进行多少次改造操作。
### 输入格式
第一行包含两个整数 $n,m$ ,分别表示装饰品的个数和装修工人标尺的长度。
第二行包括 $n$ 个整数 $a_1,a_2,\dots,a_n$ ,表示装饰品的长度。
### 输出格式
输出一个整数,表示装修工人需要进行改造操作最少的次数。
### 样例输入
```
5 7
0 6 1 3 2
```
### 样例输出
```
1
```
### 评测数据规模
对于所有评测数据, $1\leq{n,m}\leq{10^5 },0\leq{a_i}