제출 #1256577

#제출 시각아이디문제언어결과실행 시간메모리
1256577ardaKarte (COCI18_karte)C++20
120 / 120
123 ms4812 KiB
#include <bits/stdc++.h> using namespace std; int main(){ int n, k; cin >> n >> k; int a[n]; for(int i = 0; i < n; i++){ cin >> a[i]; } sort(a, a+n); int mn = a[n-1]; if(a[n-1] == 0){ if(k != 0) cout << -1 << endl; else{ for(int i = 0; i < n; i++) cout << 0 << " ";} return 0; } if(n == 1){ if(a[0] == 0 && k == 0) cout << 0 << endl; else if(a[0] != 0 && k) cout << a[0] << endl; else cout << -1 << endl; return 0; } for(int i = n-1; i > 1; i--){ mn = min(mn, a[i]); if(a[i-1] <= n-i && mn > 0){ if(n-i == k){ for(int j = i-1; j > -1; j--) cout << a[j] << " "; for(int j = n-1; j > i-1; j--) cout << a[j] << " "; return 0; } } mn--; } cout << -1 << endl; }
#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...