您现在的位置是:首页 > 博客日记 > Python Python

用0、1、2、3、4、5、6、7、8、9 十个数字摆出两个五位数,使这两个五位数相加和最大,可以摆出怎样的算式?相加和是多少?

2019-12-18 17:45:34 【Python】 人已围观

用0、1、2、3、4、5、6、7、8、9 十个数字摆出两个五位数,使这两个五位数相加和最大,可以摆出怎样的算式?相加和是多少?

  1. #!/usr/bin/env
  2. # -*- coding:utf-8 -*-
  3. import time
  4. if __name__ == "__main__":
  5. a = b = c = d = e = 0 # 每一位的值,a是万位上,b是千位,c是百位,d是十位,e是个位
  6. h = n = 0 # 记录总共拼接数字个数
  7. number_array = [] # 记录所拼接出的五位不重复数字
  8. for a in range(0, 10): # 万位的可能性
  9. for b in range(0, 10): # 千位的可能性
  10. for c in range(0, 10): # 百位的可能性
  11. for d in range(0, 10): # 十位的可能性
  12. for e in range(0, 10): # 个位的可能性
  13. if a == b or a == c or a == d or a == d or b == c or b == d or b == e or c == d or c == e or d == e or a == 0: # 数字只能使用一次,首位不能为0
  14. h = h + 1
  15. else:
  16. number = str("%d%d%d%d%d" % (a, b, c, d, e))
  17. number_array.append(number)
  18. n = n + 1
  19. print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) + "功能拼接出%d个数值" % n)
  20. answer = 0 # 两个值加和的最大值
  21. answer_number = [] # 那两个数字
  22. # 在所有拼接出来的5位数中两个值相加取最大的和
  23. for i in number_array:
  24. for j in number_array:
  25. if i != j:
  26. if (int(i) + int(j)) >= int(answer):
  27. answer = int(i) + int(j)
  28. print(answer)
  29. answer_number.append({i, j})
  30. print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) + str(answer))
  31. print(answer_number)


关注TinyMeng博客,更多精彩分享,敬请期待!
 

很赞哦! ()