Submission #1033835

#TimeUsernameProblemLanguageResultExecution timeMemory
1033835vjudge1Stove (JOI18_stove)C++11
100 / 100
38 ms3540 KiB
#include <bits/stdc++.h>

const long long MAXN = 1e5 + 1;

using namespace std;

long long n, k, total_time = 0, skipped_time = 0;

long long a[MAXN];

vector<long long> gaps;

int main()
{
    cin >> n >> k;

    for (int i = 0; i < n; i ++)
    {
        cin >> a[i];
    }

    for (int i = 1; i < n; i ++)
    {
        gaps.push_back(a[i] - a[i - 1] - 1);
    }

    sort(gaps.begin(), gaps.end(), greater<long long>());

    total_time = a[n - 1] - a[0] + 1;

    for (int i = 0; i < k - 1 && i < gaps.size(); i ++)
    {
        skipped_time += gaps[i];
    }

    cout << total_time - skipped_time << "\n";
}

Compilation message (stderr)

stove.cpp: In function 'int main()':
stove.cpp:31:36: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   31 |     for (int i = 0; i < k - 1 && i < gaps.size(); i ++)
      |                                  ~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...