• 明明的随机数


    题目描述 
    时间限制:1秒 空间限制:32768K 
    明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。

    Input Param 
    n 输入随机数的个数 
    inputArray n个随机整数组成的数组

    Return Value 
    OutputArray 输出处理后的随机整数

    注:测试用例保证输入参数的正确性,答题者无需验证。测试用例不止一组。

    输入描述: 
    输入多行,先输入随机整数的个数,再输入相应个数的整数 
    输出描述: 
    返回多行,处理后的结果 
    示例1 
    输入 
    11 
    10 
    20 
    40 
    32 
    67 
    40 
    20 
    89 
    300 
    400 
    15 
    输出 
    10 
    15 
    20 
    32 
    40 
    67 
    89 
    300 
    400

    #include<stdio.h>
    #include<string.h>
    //http://patchwork.ozlabs.org/patch/614334/
    int main(void)
    {
        int a[1001] = { 0 };
        int n;
        int val;
        int num = sizeof(a) / sizeof(a[0]);
        while (scanf("%d", &n) != EOF)
        {
            memset(a, 0, num);
            for (int i = 0; i<n; i++)
            {
                scanf("%d", &val);
                a[val] = 1;
            }
            for (int i = 0; i<1001; i++)
            {
                if (a[i] == 1)
                {
                    printf("%d
    ", i);
                }
            }
        }
    
        return 0;
    }

    要通过牛客的机器检测真是恼火,还要具备多次输入功能,提交了N次。。。

    上面采取的方式很讨巧,但却是一种高效的解决方案。

  • 相关阅读:
    poj 3280 Cheapest Palindrome (dp)
    hdu 4359 Easy Tree DP? ( dp )
    hdu 2844 Coins (多重背包+ 二进制优化)
    三分法 讲解
    poj 1191 棋盘分割 (dp)
    hdu 4340 Capturing a country(树形 dp) (2012 MultiUniversity Training Contest 5 )
    子类和父类的构造函数
    CreateProcess执行一个控制台程序,隐藏DOS窗口
    单个字符比较
    MFC 程序入口和执行流程
  • 原文地址:https://www.cnblogs.com/yangguang-it/p/9653263.html
Copyright © 2020-2023  润新知