class Solution {
public:
bool isSuccess(vector<int>&price,int mid,int k){int i =0;int n = price.size();int count =1;int val = price[0]+ mid;for(int i =1; i < n; i++){if(price[i]>= val){
val = price[i]+ mid;
count ++;}if(count >= k)return true;}return false;}intmaximumTastiness(vector<int>& price,int k){int n = price.size();sort(price.begin(), price.end());int maxK = price[n-1]- price[0];int left =0;int right = maxK;while(left < right){int mid = left +(right - left +1)/2;if(isSuccess(price, mid, k)){
left = mid;}else{
right = mid-1;}}return left;}};