Agony


私信TA

用户名:dzc21

访问量:41954

签 名:

CSDN博客:http://blog.csdn.net/qq_38712932

等  级
排  名 44
经  验 7773
参赛次数 0
文章发表 81
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

CSDN博客:http://blog.csdn.net/qq_38712932 个人博客:http://www.eternallyc.top/blog/index

解题思路:


可以先排序再去重,或者先去重再排序


注意事项:

我这里是先排序再去重点的,需要注意就是将前一个重复数去掉



参考代码:

#include <cstdio>

#include <algorithm>

using namespace std;

int main()

{

    int n;

    while(~scanf("%d",&n))

    {

        int i[1005];

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

            scanf("%d",&i[a]);

        sort(i,i+n);

        int num=1;

        int nums=n;

        int nums1=0;

        while(1)

        {

            if(num>n-1)

                break;

            if(i[num]==-1)

                continue;

            if(i[num]==i[num-1])

            {

                i[num-1]=-1;

                nums--;

            }

            num++;

        }

        printf("%d\n",nums);

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

        {

            if(i[a]!=-1)

            {

               nums1++;

                printf(nums1==nums?"%d\n":"%d ",i[a]);

            }

        }

    }

    return 0;

}


 

0.0分

0 人评分

  评论区