Submission #678554

#TimeUsernameProblemLanguageResultExecution timeMemory
678554tranxuanbachStove (JOI18_stove)C++17
100 / 100
22 ms2312 KiB
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace std; using namespace __gnu_pbds; #define endl '\n' #define fi first #define se second #define For(i, l, r) for (int i = l; i < r; i++) #define ForE(i, l, r) for (int i = l; i <= r; i++) #define FordE(i, l, r) for (int i = l; i >= r; i--) #define Fora(v, a) for (auto v: a) #define bend(a) a.begin(), a.end() #define isz(a) ((signed)a.size()) typedef long long ll; typedef long double ld; typedef pair <int, int> pii; typedef vector <int> vi; typedef vector <pii> vpii; typedef vector <vi> vvi; const int N = 1e5 + 5; int n, k; int t[N]; priority_queue <int, vi, greater <int>> pq; signed main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); // freopen("stove.inp", "r", stdin); // freopen("stove.out", "w", stdout); cin >> n >> k; ForE(i, 1, n){ cin >> t[i]; } ForE(i, 2, n){ pq.push(t[i] - t[i - 1] - 1); } int ans = n; ForE(i, 1, n - k){ ans += pq.top(); pq.pop(); } cout << ans << endl; } /* ==================================================+ INPUT: | --------------------------------------------------| --------------------------------------------------| ==================================================+ OUTPUT: | --------------------------------------------------| --------------------------------------------------| ==================================================+ */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...