#include<bits/stdc++.h>
using namespace std;
const int N=5e5+10;
int arr[N];
vector<int> v;
int main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
int n,t;
cin>>n >>t;
int ans=INT_MAX;
for(int i=1;i<=n;i++) cin>>arr[i];
for(int i=1;i<=n;i++) arr[i]%=t;
for(int i=1;i<=n;i++) v.push_back(arr[i]),v.push_back(arr[i]-t);
sort(v.begin(),v.end());
v.erase(unique(v.begin(),v.end()),v.end());
for(int i=0;i<v.size();i++){
int mx=INT_MIN;
bool ab=true;
for(int j=1;j<=n;j++){
if(arr[j]<v[i]){
ab=false;
break;
}
if(arr[j]-t>=v[i]) mx=max(mx,arr[j]-t);
else mx=max(mx,arr[j]);
}
if(!ab) break;
ans=min(ans,mx-v[i]);
}
cout<<(int)(ceil((double)ans/2));
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |