题目描述
设有n个正整数(n≤20),将它们联接成一排,组成一个最大的多位整数。
例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213
又如:n=4时,4个整数7,13,4,246联接成的最大整数为:7424613
输入输出格式
输入格式:
第一行,一个正整数n。
第二行,n个正整数。
输出格式:
一个正整数,表示最大的整数
输入输出样例
输入样例#1:
3
13 312 343
输出样例#1:
34331213
选择排序,如果b[i]+b[j]
var
b:array[1..100] of string;
i,j,k,n:integer;
tmps:string;
begin
read(n);
for i:=1 to n do
begin
read(k);
str(k,b[i]);
end;
for i:=1 to n-1 do
for j:=i+1 to n do
if ((b[i]+b[j])<(b[j]+b[i]))then
begin
tmps:=b[j];b[j]:=b[i];b[i]:=tmps;
end;
for i:=1 to n do write(b[i]);
writeln;
end.

本文介绍了一种通过选择排序算法来解决将多个正整数连接起来形成最大整数的问题。输入为一组正整数,输出为由这些整数组成的最大整数。通过比较不同整数组合的可能性来决定最优顺序。
998

被折叠的 条评论
为什么被折叠?



