bool check(int x) { int lst = 0, ans = 0; int lst2=0; for(int i = 0; i < n; i++) { if(a[i] - lst < x) ans++; else { lst2=lst; lst = a[i]; } } return (ans < m && l - lst2 >= x )|| (ans==m && l-lst>=x); }