Harvey


私信TA

用户名:HarveyJI

访问量:235

签 名:

等  级
排  名 16116
经  验 768
参赛次数 0
文章发表 1
年  龄 0
在职情况 学生
学  校 安徽新华学院
专  业 掉头发专业

  自我简介:

TA的其他文章

解题思路:
参考代码:

#include<iostream>

#include<algorithm>

using namespace std;


struct Number{         //将每个数与出现个数捆绑在一起

  int s;

  int k;

};      


bool comp(Number x,Number y)   //因为自定义结构体,所以sort比较要自定义

{

return x.s<y.s;

}


int main()

{

    int n;

    cin>>n;

    Number a[n];

    

    for(int i=0;i<n;i++)    //初始化结构体

    {

        cin>>a[i].s;

        a[i].k=1;                //初始每个数出现个数为1

    }

    

    sort(a,a+n,comp);   //sort一下;


for(int i=0;i<n;i++)    //实现每个相同数出现一次,k就加上上一个的k

{

if(a[i].s==a[i+1].s)

{

a[i+1].k +=a[i].k;

}

}

 

for(int i=0;i<n;i++)

{

if(i!=n-1&&a[i].s!=a[i+1].s)      //相邻不同就输出

{

cout<<a[i].s<<" "<<a[i].k<<endl;

}

if(i==n-1)

cout<<a[i].s<<" "<<a[i].k<<endl;

  } 

    return 0;

}


 

0.0分

1 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区