#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(v[i] < t / 2ll) 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... |