codevs 1487 大批整数排序

!!!CodeVS开发者有话说:

        codevs自从换了评测机,新评测机的内存计算机制发生变化

        计算内存的时候会包括栈空间 swap空间

        这题的2M是单指内存空间。。。

        十分十分抱歉

        抱歉

!!!

现在有一大批(总数不超过10000000个)1到10之间的整数,现在请你从小到大进行排序输出。

(测试数据将超过11MB。)

输入描述 Input Description

第一行表示将下排序的个数N;

第2行到最后一行,每行一个数,表示有待排序的数(均是1-10之间的数,含1和10)

(注:最后有一空行)

输出描述 Output Description

输出N个从小到大排列好的数,每行一个(注:最后有一空行)

样例输入 Sample Input

11
9
10
1
2
3
4
5
6
7
8
9

样例输出 Sample Output

1
2
3
4
5
6
7
8
9
9
10

数据范围及提示 Data Size & Hint

注意内存限制只有8MB

ps 因为评测机的内存限定是包括栈的,所以扩大了该题的内存限制

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
long long int n;
int a[11],k;
int main()
{
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
    {
        cin>>k;
        a[k]++;
    }
    for(int i=1;i<=10;i++)
    {
        while(a[i]>0)
        {
            printf("%d
",i);
            a[i]--;
         } 
    }
    return 0;
 } 
原文地址:https://www.cnblogs.com/chen74123/p/6680861.html