问题标题: 酷町堂:5157 多元化团队

0
0
已解决
丁博扬
丁博扬
中级天翼
中级天翼

 

5157   多元化团队                                          

题目描述 Description                                                            

一堂课上有n个学生,第i个学生上的评分是ai。 您必须组成一个由k个学生组成的团队(1≤k≤n),以便所有团队成员的评分都不同。

如果无法组建合适的团队,输出NO。 否则,输出YES;

输入描述 Input Description

输入两行:
第一行包含两个整数n和k(1≤k≤n≤100)分别表示学生人数n和必须组建的团队规模k。

第二行包含n个整数a1,a2,…,an(1≤ai≤100),其中ai是第i个学生的等级。

输出描述 Output Description

输出一行YES 或者 NO

样例输入 Sample Input

样例输入1: 5 3 15 13 15 15 12 样例输入2: 5 4 15 13 15 15 12

样例输出 Sample Output

样例输出1: YES

样例输出2: NO

 

 

错误代码:

#include<iostream>
using namespace std;
int a[110],b[1100],cnt;
int main(){
    int n,shu;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        b[a[i]]++;
    }
    for(int i=0;i<=100;i++){
        if(b[i]>0){
            cnt++;
        }
        b[i]=0;
    }
    if(cnt==shu){
        cout<<"Yes";
    }
    else if(cnt!=shu){
        cout<<"No";
    }
    return 0;

丁博扬在2020-12-15 20:03:56追加了内容


1
已采纳
李显晨
李显晨
中级启示者
中级启示者

你这写的k都没输入,输入部分:

cin>>n>>k;
    for(int i=1;i<=n;i++){
        cin>>t;
        a[t]++;
    }

计数部分:

for(int i=1;i<=100;i++){
        if(a[i]!=0) cnt++;
    }

判断:

if(cnt>=k) cout<<"YES";
    else cout<<"NO";

定义:

int a[1000],cnt,n,k,t;

 

0
0
0
0
0
0
我要回答