Advertisement
Guest User

Kickstart G - c

a guest
Oct 18th, 2020
559
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.94 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #include "string"
  4. #define int long long
  5. #define pi pair<int, int>
  6. #define ff first
  7. #define ss second
  8. #define boost ios::sync_with_stdio(false);cin.tie(nullptr)
  9. #define endl '\n'
  10. #define vivek cout << "Case #" << t << ": "
  11.  
  12. int32_t main() {
  13.     boost;
  14.     int test;
  15.     cin >> test;
  16.     for(int t = 1; t <= test; t++){
  17.         vivek;
  18.         int w, n;
  19.         cin >> w >> n;
  20.         vector < int > a(w);
  21.         for(int &i : a)
  22.             cin >> i;
  23.         sort(a.begin(), a.end());
  24.         for(int i = 0; i < w; i++)
  25.             a.push_back(a[i] + n);
  26.         vector < int > pf = a;
  27.         for(int i = 1; i < a.size(); i++)
  28.             pf[i] += pf[i - 1];
  29.         int ans = 1e18;
  30.         for(int l = 0; l < w; l++) {
  31.             int r = l + w - 1;
  32.             int m = (l + r) / 2;
  33.             int cur = pf[m];
  34.             if(l > 0)
  35.                 cur -= pf[l - 1];
  36.             cur = (m - l + 1) * a[m] - cur;
  37.             int tt = pf[r] - pf[m];
  38.             cur += tt - (r - m) * a[m];
  39.             ans = min(ans, cur);
  40.         }
  41.         cout << ans << endl;
  42.     }
  43.     return 0;
  44. }
  45.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement