一个数字排序问题……数学高手请帮我看看…

问题描述:

一个数字排序问题……数学高手请帮我看看…
这是一个竞赛题…如果随机给我大小在1-999之间的100个整数,将它们全部连接起来得到一个新数N.有没有什么巧妙的办法迅速得到其中最大的N呢?
1个回答 分类:数学 2014-09-24

问题解答:

我来补答
很难表述啊,我尽量啊
首先将100个数排序,按以下规则
在个位数后面加两个9,补足三位数,在十位数后面加一个9,补足三位数,进行排序.如果发生重复,比如5,59和599,就把位数多的列前面,但是加上的9只在比大小时使用,排序完即拿走,恢复原数.(比方说9>98>988)从上到下把这些数列好.
然后进行分组,将第一个数位相同的数归为一组(3,35,378……),组的上下顺序不变,9最大,1最小
在每组内进行第二次排序.规则如下
碰到1,2位数时,用它下面紧邻的一个数插在后面,只取前三位组成一个新数,(比如有三个数3,34,348,就变成了334,343,348)然后将新数在组内进行比大小排序,排好上下之后在把加上去的数撤掉,恢复原数.
然后从上到下一排就好了.
例证23,536,654,35,234,567,65,243,354,359,53,5
第一次排序 65,654,5,567,53,536,359,35,354,243,23,234
第二次排序 65,654,567,5,536,53,359,354,35,243,234,23
大功告成.
 
 
展开全文阅读
剩余:2000
上一页:第九题,详解
下一页:gyyv