제출 #1306533

#제출 시각아이디문제언어결과실행 시간메모리
1306533sqwiijqkStove (JOI18_stove)C++20
100 / 100
16 ms2372 KiB
#pragma gcc optimize("Ofast")

#include <vector>

#pragma gcc target("avx, avx2, popcnt, lzcnt")

#include <bits/stdc++.h>
#include <experimental/random>

using namespace std;

void solve1();

using ll = long long;
using ull = unsigned long long;
using ld = double;
using BIG = __int128_t;
# define int long long
# define chmin(a, b) a = min(a, b)
const int MOD = 1e9 + 7;
const int INF = 1e18;

signed main() {
#ifdef LOCAL
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
#endif
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int qwerty = 1;
//    cin >> qwerty;
    while (qwerty--) {
        solve1();
    }
}

void solve1() {
    int n, k;
    cin >> n >> k;
    vector<int> a(n);
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }
    sort(a.begin(), a.end());
    vector<int> b;
    for (int i = 1; i < n; i++) {
        b.push_back({a[i] - a[i - 1] - 1});
    }
    sort(b.rbegin(), b.rend());
    int all = a[n - 1] - a[0] + 1;
    for (int i = 0; i < min((int) b.size(), k - 1); i++) {
        all -= b[i];
    }
    cout << all;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...