📜  由给定三个数字的数字组成的最大数字(1)

📅  最后修改于: 2023-12-03 15:40:56.603000             🧑  作者: Mango

题目介绍

给定三个数字,请编写一个程序,返回由这三个数字组成的最大数字。

实现思路

这道题最简单的思路就是将三个数字转化为字符串,然后进行排序,最后将排序后的结果拼接成一个新的字符串即可得到最大数字。具体步骤如下:

  1. 将三个数字转化为字符串
  2. 对这三个字符串进行排序
  3. 将排序后的字符串拼接成一个新的字符串
  4. 将这个新的字符串转化为数字并返回
代码实现
def maximum_number(num1: int, num2: int, num3: int) -> int:
    # 将三个数字转化为字符串
    str_num1 = str(num1)
    str_num2 = str(num2)
    str_num3 = str(num3)
  
    # 对这三个字符串进行排序
    str_list = [str_num1, str_num2, str_num3]
    str_list.sort(reverse=True)
    
    # 将排序后的字符串拼接成一个新的字符串
    new_str = ''.join(str_list)
    
    # 将这个新的字符串转化为数字并返回
    return int(new_str)
测试样例

测试样例1:

assert maximum_number(1, 2, 3) == 321

测试样例2:

assert maximum_number(10, 20, 30) == 301020

测试样例3:

assert maximum_number(423, 12, 222) == 42322212
总结

这道题的实现思路比较简单,主要难点在于将排序后的字符串拼接成一个新的字符串。需要注意的是,在将字符串转化为数字时,需要使用 int() 函数来实现。