제출 #1359986

#제출 시각아이디문제언어결과실행 시간메모리
1359986AOrdinaryKarte (COCI18_karte)C++20
120 / 120
48 ms6912 KiB
#include <bits/stdc++.h>

using namespace std;
#define int long long 
#define TL ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define rall(s) s.rbegin(),s.rend()
#define all(s) s.begin(),s.end()
#define pb push_back
#define sz(s) s.size()
#define se second
#define fi first
#define ll long long
#define ld long double
#define YES cout<<"YES\n"
#define Yes cout<<"Yes\n"
#define yes cout<<"yes\n"
#define NO cout<<"NO\n"
#define No cout<<"No\n"
#define no cout<<"no\n"


const int N = 1e6 + 9 , mod = 1e9 + 7;
const ll inf = 1e18;
const ll MOD = (ll)1e9+7;
 
void solve() {	
	ll n,k; cin >> n >> k;
	ll cnt = 0;
	vector<long long> v(n);
	vector<ll> res;
	for(ll i = 0;i<n;i++) cin >> v[i]; 
	sort(all(v)); //reverse(all(v)); 
	for(ll i = 0;i<n - k;i++){
		if(v[i] > k){
			cout << "-1 \n";
			return;
		} 
	} reverse(v.begin() + n - k, v.end());
	for(ll i = n - k;i < n;i++){
		if(v[i] <= n - i - 1){
			cout << "-1 \n";
			return;
		}
	} for(ll i = 0;i<n;i++) cout << v[i] << ' ';
	
	
}
int32_t main(){
    //freopen("kgraph.in", "r", stdin);
    //freopen("kgraph.out", "w", stdout);
    TL;
    int test = 1; //cin>>test;
    while(test--)	solve();
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…