问题标题: 酷町堂:3975

0
0
已解决
李明阳
李明阳
初级光能
初级光能

#include<iostream>
using namespace std;
int a[10009]; 
int main(){
    int n,t,m;
    cin>>n>>m;
    for(int i=1;i<=n;i++){
        cin>>t;
        a[t]++;
    }
    for(int i=10000;i>=1;i--){
        if(a[i]!=0){
            cout<<i<<' ';
        }
    } 
    return 0;
}
 


0
已采纳
高子健
高子健
新手天翼
新手天翼

这题我来教你

首先

   for(int i=10000;i>=1;i--)

底下加一个for循环(不知道问我)

if省去

输出底下再加一个判断

if(a[i]==m)

把a[i]数组清0

即可AC

高子健在2020-03-18 17:16:33追加了内容


    for(int i=10000;i>=1;i--){
        for(int i=1;i<=a[i];i++){
            cout<<i<<" ";
            if(a[i]==m){
                a[i]==0;
            }
        }
   }

交换一下位置

先判断

再输出

if(.......){

.........=0;

}

循环(...........){

循环(........){

输出<<........;

}

}

0
李明阳
李明阳
初级光能
初级光能

#include<iostream>
using namespace std;
int a[10009]; 
int main(){
    int n,t,m;
    cin>>n>>m;
    for(int i=1;i<=n;i++){
        cin>>t;
        a[t]++;
    }
    for(int i=10000;i>=1;i--){
        for(int i=1;i<=a[i];i++){
            cout<<i<<" ";
            if(a[i]==m){
                a[i]==0;
            }
        }
    } 
    return 0;
}

我要回答