func_code_string: #include <bits/stdc++.h>   using namespace std;   const int inf = (1 << 30) - 1;   const long long linf = (1ll << 62) - 1;   int n, l, t;   vector<int> a;   long double ans = 0;   inline int getCount(int ll, int rr) {     if (rr < l) {       ll = lower_bound((a).begin(), (a).end(), ll) - a.begin();       rr = upper_bound((a).begin(), (a).end(), rr) - a.begin();       return rr - ll;     }     return getCount(ll, l - 1) + getCount(0, rr - l);   }   int main() {     assert(scanf( %d%d%d , &n, &l, &t));     a.resize(n);     for (int i = 0; i < n; i++) assert(scanf( %d , &a[i]));     t *= 2;     for (int i = 0; i < n; i++) ans += (t / l) * ((n - 1) / 2.0);     t %= l;     for (int i = 0; i < n; i++) ans += (getCount(a[i], a[i] + t) - 1) / 2.0;     cout.precision(20);     cout << fixed << ans / 2 <<   n ;     return 0;   }   