zoukankan      html  css  js  c++  java
  • 华科机考:大整数排序

    时间限制:1秒  空间限制:32768K

    题目描述

    对N个长度最长可达到1000的数进行排序。

    输入描述: 输入第一行为一个整数N,(1<=N<=100)。 接下来的N行每行有一个数,数的长度范围为1<=len<=1000。 每个数都是一个正数,并且保证不包含前缀零。

    输出描述: 可能有多组测试数据,对于每组数据,将给出的N个数从小到大进行排序,输出排序后的结果,每个数占一行。

    输入例子: 3

                 11111111111111111111111111111

                 2222222222222222222222222222222222

                 33333333

    输出例子: 33333333

                 11111111111111111111111111111

                 2222222222222222222222222222222222

    思路:写个cmp就行了,先按照长度来比较,如果一样的话再按照字典序来排

    代码:

    #include <algorithm>
    #include <iostream>
    #include <vector>
    using namespace std;
    
    int cmp(string str1,string str2){
       if(str1.size()!=str2.size())
          return str1.size()<str2.size();
       else
          return str1<str2;
    
    }
    int main(){
       int n,tmp;
       string str;
       vector<string> a;
       while(cin>>n){
       tmp=n;
       while(tmp--){
       cin>>str;
       a.push_back(str);
       }
       sort(a.begin(),a.end(),cmp);
       for(int i=0;i<n;i++)
        cout<<a[i]<<endl;
       a.clear();
       }
       return 0;
    }
  • 相关阅读:
    C/C++程序内存泄漏检测
    linux下的内存管理
    Linker Script 链接器脚本
    linux内核进程调度以及定时器实现机制
    嵌入式软件设计中查找缺陷的几个技巧
    winCE DEBUGZONE
    程序员三个境界
    EJB初识(通熟易懂)
    JVM/JDK/JRE/IDE—区别(很经典)
    dubbo初识(一)Dubbo架构设计详解
  • 原文地址:https://www.cnblogs.com/mlgjb/p/6719847.html
Copyright © 2011-2022 走看看