#include <bits/stdc++.h>
#define ll long long
#define rep(i, a, b) for(int i = int(a); i < int(b); i++)
#define ub(c, x) distance((c).begin(),lower_bound(c.begin(),c.end(), (x)))
using namespace std;
const int inf = 1e9;
ll gcd(ll a, ll b){
if(b == 0) return 1;
return gcd(b, a % b);
}
void F(){
ll n, t;
cin >> n >> t;
vector<ll> v(n);
rep(i, 0, n) cin >> v[i];
ll mx = 0ll;
rep(i, 0, n){
v[i] %= t;
mx = max(mx, v[i]);
}
ll a1 = 0ll, a2 = mx;
rep(i, 0, n){
if(mx - v[i] >= t + v[i] - mx){
v[i] += t;
}
a1 = max(a1, v[i]);
a2 = min(a2, v[i]);
}
cout << (a1 - a2 + 1) / 2;
}
int main() {
int tc = 1;
//cin >> tc;
while(tc--) F();
}
# | 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... |