问题标题: 酷町堂:3975,求解!

0
0
已解决
张亦阳
张亦阳
资深守护
资深守护

错误代码;

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

 


0
已采纳
陈曦
陈曦
资深天翼
资深天翼

思路如下:

 

遍历数组。
其数量 等于m 就跳过,
不等于 m 就输出.

陈曦在2020-03-22 19:50:05追加了内容

你错在:

“i”不要清0。

0
0
张岳恒
张岳恒
资深光能
资深光能

你既然都continue了,还怎么清零?

还有,清零是a[i]=0;

输出i单独放出去,是要从小到大输出  

 

0
0
赵朗
赵朗
高级光能
高级光能

定义数组

桶记录下标你自己写

重点到了 要倒着把数进行排序 (降序输出)

int i=10000;i>=0;i-- 写在for循环里

if判断里套循环

if判断里写a[i]!=m

请你将其中重复出现m(1~20)次的整数舍去

最后输出你自己写

整体你自己好好看看 

求采纳

0
李致远
李致远
高级光能
高级光能
具体思路:这题要用桶排序!

桶排序很简单!

下面是重点

1该题要用降序输出!

2 该题不要去重!

3 注意数组大小

我要回答