Submission #850983

#TimeUsernameProblemLanguageResultExecution timeMemory
850983askowStove (JOI18_stove)C++14
20 / 100
13 ms348 KiB
#include <bits/stdc++.h>
#define int long long
using namespace std;
signed main(){
    ios::sync_with_stdio(false);
    cin.tie(0);
    int n,k;
    cin>>n>>k;
    int a[n];
    for(int i=0;i<n;i++)cin>>a[i];
    if(n<=20){
        int ans=1e18;
        for(int i=0;i<(1LL<<n);i++){
            if(__builtin_popcount(i)>k)continue;
            if(__builtin_popcount(i)<k)continue;
            int R=0;
            int pret=0;
            for(int j=0;j<n;j++){
                if(i&(1LL<<j)){
                    // ovde gasim
                    R+=(a[j]+1)-(a[pret]);
                    pret=j+1;
                }
            }
            //return 0;
            if(i&(1LL<<(n-1))){
                //cout<<i<<" "<<R;
                //cout<<endl;
                ans=min(ans,R);
                //cout<<i<<" "<<R;
                //cout<<endl;
            }
        }
        cout<<ans;
        return 0;
    }
    priority_queue<pair<int,pair<int,int>>>pq;
    pq.push({(a[n-1]+1)-a[0],{0,n-1}});
    while(k--){

    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...