zoukankan      html  css  js  c++  java
  • C小加 之 随机数

    C小加 之 随机数

    时间限制:3000 ms  |  内存限制:65535 KB

    难度:1

    描写叙述

    ACM队的“C小加同学想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N11000之间的随机整数(0<N≤100),对于当中反复的数字,仅仅保留一个,把其余同样的数去掉,不同的数相应着不同的学生的学号。然后再把这些数从小到大排序,依照排好的顺序去找同学做调查。请你协助 C小加 完毕去重排序的工作。

    输入

    第一行输入整数T(1<T<10)表示多少组測试数据,
    每组測试数据包含2行,
    第1行为1个正整数,表示所生成的随机数的个数:N(0<N≤100)
    第2行有N个用空格隔开的正整数,为所产生的随机数。
    (随机数为题目给定的,不须要ACMer生成)

    输出

    输出也是2行,第1行为1个正整数M,表示不同样的随机数的个数。
    第2行为M个用空格隔开的正整数,为从小到大排好序的不同样的随机数。

    例子输入

    11020 40 32 67 40 20 89 300 400 15

    例子输出

    815 20 32 40 67 89 300 400

    题解:

       (1)遇到“去重”与“排序”的问题,记住要先排序,由于排完序之后,反复的肯定在一起,仅仅需a[i]!=a[i-1],a[i]输出就可以。

       (2)排序能够用qsort,也可用冒泡排序。

    int类型数组排序

    int num[100];

    int cmp ( const void *a , const void *b )
    {
    return *(int *)a - *(int *)b;//由小到大排序,return *(int *)b-*(int *)a; 为由大到小排序。 
    }

    qsort(num,100,sizeof(num[0]),cmp);

     

    程序代码:

    #include<stdio.h>

    #include<stdlib.h>

     

    int cmp(const void *a,const void *b)

    {

         return *(int *)a-*(int *)b;

    }

     

    int main()

    {

      int t,n,i,j,count;

      int a[1010];

      scanf("%d",&t);

      while(t--)

      {

        scanf("%d",&n);

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

        scanf("%d",a+i);

        qsort(a,n,sizeof(a[0]),cmp);

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

        {

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

           {

             count++;

             continue;

           }

        }

        printf("%d ",n-count);

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

          if(a[i]!=a[i-1])

            printf("%d ",a[i]);

          putchar(' ');

      }

         system("pause");

         return 0;

                

                                                      

  • 相关阅读:
    How to change hostname on SLE
    How to install starDIct on suse OS?
    python logging usage
    How to reset password for unknow root
    How to use wget ?
    How to only capute sub-matched character by grep
    How to inspect who is caller of func and who is the class of instance
    How to use groovy script on jenkins
    Vim ide for shell development
    linux高性能服务器编程 (二) --IP协议详解
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/3872923.html
Copyright © 2011-2022 走看看