Source Code
#include <bits/stdc++.h>
using namespace std;
#define   IOS   ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0);srand(chrono::high_resolution_clock::now().time_since_epoch().count());
#define   mp make_pair
#define   pb push_back
#define   ll long long
#define   debug(x)  cout << '[' << #x << " is: " << x << "] " << endl;
#define   debugg(x,y)  cout << '[' << #x << " is: " << x << "] " << " " << '[' << #y << " is: " << y << "] ";
#define   rsor(v)   sort(v.rbegin() , v.rend());
#define   rev(v)    reverse(v.begin() , v.end());
#define   sz(x)     (int)(x).size()
#define   all(x)    x.begin(), x.end()
#define  _cout(v)  for(auto f : v ) cout << f << " " ;
#define  _cin(v)   for(auto &it : v)cin >> it ;
#define  _for(v)   for(int i=0;i<(v);i++)
#define   PFD(n) cout.precision(n)<<fixed
#define gc getchar_unlocked
#define  vi vector<int>
#define  fs first
#define  sc second
const long double PI=3.14159265359;

#define  int long long
void setIO(string name = "") {if(sz(name)){freopen((name+".in").c_str(), "r", stdin);
                                            freopen((name+".out").c_str(), "w", stdout);}}

void solve(){
   // Think twice code once
   int n,k;
   cin >> n >> k;
   vector<int> a(n);
   _cin(a)
   int sum = accumulate(all(a),0ll);
   //k--;
   //n--;
   int ans = -1e18;
   for (int i=0;i<n;i++){
      int tmp = 0ll;
      int cur = 0ll;
      vi res;
      for (int p=i;p<n;){
         //debug(p)
         res.pb(a[p]);
         cur+=a[p];
         //else break;
         tmp++;
         p=i+k*tmp;

      }
      ans = max(ans,cur);
      //debug(ans);
      //break;
   }

   cout << sum-ans << '\n';

}
int32_t main() {
    IOS;
    int _=1;
    //cin>>_;
    for(int tc=1;tc<=_;tc++){
        // cout << "Case #" << tc << ": ";
        solve();
    }

}
Copy
Offer Anas_AbuAmar
GNU G++17
2 ms
376 KB
Accepted