제출 #1281843

#제출 시각아이디문제언어결과실행 시간메모리
1281843hackstarStove (JOI18_stove)C++20
20 / 100
2 ms976 KiB
#include<bits/stdc++.h> using namespace std; #define ll long long #define ull unsigned ll #define pb emplace_back //#define mp make_pair #define ALL(x) (x).begin(),(x).end() #define rALL(x) (x).rbegin(),(x).rend() #define srt(x) sort(ALL(x)) #define rev(x) reverse(ALL(x)) #define rsrt(x) sort(rALL(x)) #define sz(x) (int)(x.size()) #define inf 1e16 #define pii pair<int,int> #define lb(v,x) (int)(lower_bound(ALL(v),x)-v.begin()) #define ub(v,x) (int)(upper_bound(ALL(v),x)-v.begin()) #define uni(v) v.resize(unique(ALL(v))-v.begin()) void die(string S){puts(S.c_str());exit(0);} #define int long long const int mod=1e9+7; void solve() { int n,k; cin>>n>>k; vector<int>a(n); for(int &x:a) cin>>x; vector<int>diff(n+3); for(int i=0;i<n;i++) diff[a[i]]++,diff[a[i]+1]--; partial_sum(ALL(diff),diff.begin()); vector<int>ind; for(int i=0;i<diff.size();i++) if(diff[i]) continue; else ind.pb(i); vector<int>d; for(int i=1;i<a.size();i++) d.pb(a[i]-a[i-1]-1); rsrt(d); int ans=0; for(int i=0;i<min(k-1,sz(d));i++) ans+=d[i]; cout<<a.back()-a.front()+1-ans; } signed main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); int t=1; #ifdef CM freopen("input.txt","r",stdin); freopen("output.txt","w",stdout); #endif //cin>>t; while(t--) solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...