• (排序的新方法) nyoj1080-年龄排序


    1080-年龄排序


    内存限制:234MB 时间限制:2000ms 特判: No
    通过数:148 提交数:575 难度:0

    题目描述:

    JXB经常向HJS炫耀他们家乡那里有多么多么好,但是HJS大牛从来对此不屑一顾,某日,他又在那说:“我们那里的人寿命都很高,甚至还有一个150岁的老人呢!”,这次HJS大牛准备调查一下,于是收集了那里每个人的年龄数据,首先得把它们从小到大排序,这个简单的任务就交给你了!

    输入描述:

    第一行一个n,表示n个数(n<=6000000)
    第二行有n个数,表示该地区每个人的年龄
    数据只有一组

    输出描述:

    按递增序列输出这些年龄

    样例输入:

    6
    2 5 6 9 15 3

    样例输出:

    2 3 5 6 9 15

    不能用sort()会超时的。用别的方法,就是将从0到150建立数组,a[0],a[1].....a[150],然后输入年龄i,对应的a[i]++;最后根据a[i]的次数,输入年龄几次就行.
    C++代码:
    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    using namespace std;
    int a[151];
    int main(){
        int n;
        cin>>n;
        memset(a,0,sizeof(a));
        while(n--){
            int i;
            scanf("%d",&i);
            a[i]++;
        }
        for(int i = 0; i <= 150; i++){
            for(int j = 0; j < a[i]; j++)
                printf("%d ",i);
        }
        printf("
    ");
        return 0;
    }
  • 相关阅读:
    Spark基本架构及原理
    深度剖析Spark分布式执行原理
    Spark的集群管理器
    基于Redis的开源分布式服务Codis
    RabbitMQ 概念
    分布式事务实现
    优酷 视频上传服务
    深入解析Java中volatile关键字的作用
    mysql in查询 结果乱序 引发的思考
    不安装oracle客户端,用plsql连接oracle
  • 原文地址:https://www.cnblogs.com/Weixu-Liu/p/10526352.html
Copyright © 2020-2023  润新知