題目
原題鏈接:A. Diverse Team
題意
給出n個同學的排名,現(xiàn)需要挑出k個不同名次的學生瓮栗,問能否做到寥掐。若能則輸出任意一種方案最岗。
代碼
#include<bits/stdc++.h>
using namespace std;
int main() {
int n,k,s[100];
map<int,int> v;
map<int,int>::iterator it;
cin>>n>>k;
for(int i=0;i<n;i++){
cin>>s[i];
}
for(int i=0;i<n;i++){
int flag = 0;
for(it=v.begin();it!=v.end();it++){
if(s[i]==it->second){
flag = 1;
break;
}
}
if(!flag){
v[i+1]=s[i];
}
}
if(v.size()>=k){
printf("YES\n");
for(it=v.begin();it!=v.end(),k;it++,k--){
cout<<it->first;
if(k) printf(" ");
}
}else{
printf("NO\n");
}
return 0;
}