Submission #770721

#TimeUsernameProblemLanguageResultExecution timeMemory
770721kirakaminski968Stove (JOI18_stove)C++17
100 / 100
36 ms2336 KiB
#include <bits/stdc++.h>
using namespace std;

int main()
{
    int N,K; cin >> N >> K;
    vector<int> arr(N+1),dif;
    for(int i = 1;i<=N;++i) cin >> arr[i];
    if(N == 1){
        cout << 1 << "\n";
        return 0;
    }
    for(int i = 2;i<=N;++i){
        if(arr[i]-arr[i-1]-1 != 0) dif.push_back(arr[i]-arr[i-1]-1);
    }
    sort(dif.rbegin(),dif.rend());
    int ans = arr[N]-arr[1]+1;
    for(int i = 0;i<K-1;++i){
        if(i == dif.size()) break;
        ans -= dif[i];
    }
    cout << ans << "\n";
    return 0;
}

Compilation message (stderr)

stove.cpp: In function 'int main()':
stove.cpp:19:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |         if(i == dif.size()) break;
      |            ~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...