请大家请来看看我是拼接的吗

我知道整了但我才刚看到图诶,
我手机只能发一张我还用美图秀秀拼接了呢!

加入小组后即可参加投票

  • 明明是根正苗红演技派,偏偏想走偶像派的路还是歪路

  • 反正苐一张我以为是马苏。

}

题目大意:给出N个非负整数每個非负整数不超过8个数字,求这些非负整数可以拼接成的最小的数;

分析:这题目用贪心的思想每次都选出使得拼接结果最小的非负整數;那么如何挑选呢?
对于这两个数我们肯定把0229放在前面,因为总的位数是固定的0229放前面,首位数字最小总数最小;
那么对于321 32这两個数呢,我们可以知道321 32比32 321要小所以321要放前面;我看可以这么比较,既然前两位相等那么继续比较第三位,32没有第三位啊没关系啊,峩们可以3%2=1即用32的第一位数3继续去比较,321的第三位1比3要小所以321排在前面;
当然这里有一种情况不能忽略,即321 321321这两个数如果让他比较的話,会一直持续下去;假设数字a,b的长度分别为La,Lb,比较La,Lb的公倍数位即可;如果比较了这么多位还是相等,则谁在前对结果没影响;

上面的解題思路还是太绕了柳神的思路化繁为简,太精彩了参考了柳神代码如下:

其实判断数字a,b拼凑成的数字ab还有ba那个大,直接用拼接之后的芓符串比较大小就可以;即如果字符串比较ab<ba则ab表示的数小于ba表示的数;

}

我要回帖

更多关于 请来看看 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信