设有 n 个正整数 a1~an,将它们联接成一排,相邻数字首尾相接,组成一个最大的整数。
输入格式第一行有一个整数,表示数字个数 n。
第二行有 n 个整数,表示给出的 n 个整数 ai。
输出格式一个正整数,表示最大的整数
输入输出样例//输入一: 3 13 312 343 //输出一: 34331213
//输入二: 4 7 13 4 246 //输出二: 7424613题目分析
由题可知:通过从数字的开头比较各个数字,即可确定排列位置。
int类型会受到数字位数影响,无法比较,故定义为String类型。
通过比较String可以确定位置。从而将数字排序。
需要注意的是:还有一种特殊情况:
若出现: 30 和 300时,30300 > 30030;需要考虑这种特殊情况。
package com.CCUT.java;
import java.util.Arrays;
import java.util.Scanner;
public class Test2 {
public static void main(String[] args) {
Scanner sca = new Scanner(System.in);
int a = sca.nextInt();
String arr[] = new String[a];
for (int i =0; i=0; j--){
System.out.print(arr[j]);
}
}
public static boolean cmp(String a, String b){
if (a.compareTo(b)>0){
return true;
}
return false;
}
}



