Submission #1018708

#TimeUsernameProblemLanguageResultExecution timeMemory
1018708vjudge1Karte (COCI18_karte)C++17
120 / 120
131 ms12120 KiB
#include <bits/stdc++.h> using namespace std; #define int long long signed main() { int n,k; cin>>n>>k; int a[n]; for (int i=0;i<n;i++) cin>>a[i]; sort(a,a+n); multiset<int> se; for (int i=n-1;i>n-1-k;i--) se.insert(a[i]); int cnt[k+1]={}; for (int i=0;i<n-k;i++) { if (a[i]>k) return cout<<-1<<endl, 0; cnt[a[i]]++; } vector<int> ans; for (int i=0;i<=k;i++) { while (cnt[i]--) ans.push_back(i); if (i<k) { auto x=se.begin(); if (*x<=i) { cout<<-1<<endl; return 0; } ans.push_back(*x); se.erase(x); } } reverse(ans.begin(),ans.end()); for (int i:ans) cout<<i<<' '; cout<<endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...