Submission #930145

#TimeUsernameProblemLanguageResultExecution timeMemory
930145takeonickyStove (JOI18_stove)C++14
20 / 100
36 ms604 KiB
#include<bits/stdc++.h>
using namespace std;
const long long INF = 1e15;
int main(){
	int n, k;
	cin>>n>>k;
	int a[n];
	for(int i=0; i<n; i++){
		cin>>a[i];
	}
	long long ans = INF;
	for(int bit=1; bit<int(pow(2, n)); bit++){
		if(__builtin_popcount(bit) > k || (bit & 1) == 0) continue;
		long long now = a[n-1]-a[0]+1;
		for(int i=1; i<n; i++){
			if((bit & (1 << i)) > 0){
				now -= a[i]-a[i-1]-1;
			}
		}
		ans = min(ans, now);
	}
	cout<<ans<<endl;
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...