제출 #91038

#제출 시각아이디문제언어결과실행 시간메모리
91038sjhuang26Karte (COCI18_karte)C++14
120 / 120
211 ms13928 KiB
#include<iostream>
#include<algorithm>
int N,K,a[500000],ans[500000];
using namespace std;
int main(){
  cin>>N>>K;
  for(int i=0;i<N;++i)cin>>a[i];
  sort(a,a+N);
  int b=0;
  while(b!=N&&a[b]<=K)++b;
  if(N-b>K){
    cout<<-1<<'\n';
  }else{
    int j=N-1,k=K;
    for(int i=N-K;i<N;++i){
      if(a[j]<k){
        cout<<-1<<'\n';return 0;
      }else{
        ans[i]=a[j];
        --j;--k;
      }
    }
    for(int i=0;i<N-K;++i){
      ans[i]=a[j];
      --j;
    }
    for(int i=0;i<N;++i){
      cout<<ans[i];if(i!=N-1)cout<<' ';
    }
    cout<<'\n';
  }
  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...