zoukankan      html  css  js  c++  java
  • 洛谷P1012 拼数

    有n个正整数(n≤20),将它们联接成一排,组成一个最大的多位整数。

    例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213
    又如:n=4时,44个整数7,13,4,246联接成的最大整数为:7424613
    输入输出格式
    输入格式:
    第一行,一个正整数n。

    第二行,n个正整数。

    输出格式:
    一个正整数,表示最大的整数

    输入输出样例
    输入样例#1:
    3
    13 312 343
    输出样例#1:
    34331213

    参考代码:

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<string>
    #include<algorithm>
    using namespace std;
    bool cmp(string a,string b)
    {
    	return a+b>b+a;//sort对字符串排序只能是c++中string类型 
    }
    int main()
    {
    	int n;
    	string a[10];
    	cin>>n;
    	for(int i=0;i<n;i++)
    		cin>>a[i];
    	sort(a,a+n,cmp);
    	for(int i=0;i<n;i++)
    		cout<<a[i];
    	/*
    	for(int i=1;i<n;i++) //排序
        {
            for(int j=i+1;j<=n;j++)
            {
                if(a[j]+a[i]>a[i]+a[j]) //string类型可以直接比较大小
                {
                    swap(a[j],a[i]);  //交换a[i]与a[j],同样可以用swap(a[i],a[j]);
                      //  举个例子:如果是12,34,由于3412>1234,所以肯定要交换一下,直接用swap就可以了
                }
            }
        } //排序结束
    	*/
    	return 0;
    }
    
  • 相关阅读:
    MVC5+EF6 入门完整教程七
    MVC5+EF6 入门完整教程六
    MVC5+EF6 入门完整教程五
    MVC5+EF6 入门完整教程四
    MVC5 + EF6 完整入门教程三
    MVC5 + EF6 入门完整教程二
    MVC5 + EF6 入门完整教程
    最短路径简析
    PAT 1147 Heaps
    PAT 1146 Topological Order
  • 原文地址:https://www.cnblogs.com/yonglin1998/p/11780830.html
Copyright © 2011-2022 走看看