首页 > 编程语言 >python-数字黑洞

python-数字黑洞

时间:2024-06-10 12:00:49浏览次数:19  
标签:10 数字 最大数 python 变换 黑洞 三位数 495 100

[题目描述]
给定一个三位数,要求各位不能相同。例如,352是符合要求的,112是不符合要求的。将这个三位数的三个数字重新排列,得到的最大的数,减去得到的最小的数,形成一个新的三位数。对这个新的三位数可以重复上述过程。神奇的是,最终一定会得到 495!
试试看,重新排列 352,得到的最大数为 532,最小数为 235,它们的差是297;变换297,得到972−279=693;变换693,962−369=594;变换594,954−459=495。因此,经过4次变换得到了495。
现在,输入的三位数,你能通过编程得出,这个三位数经过多少次变换能够得到495吗?
输入:
输入一行,包含一个符合要求的三位数N。
输出:
输出一行,包含一个整数C,表示经过C 次变换得到 495495。
样例输入1
352

样例输出1
4

来源/分类(难度系数:一星)

 

完整代码如下:
a=int(input())
i=0
while a!=495:
    b=a%10
    c=a//10%10
    d=a//100%10
    e=b*100+c*10+d
    f=b*100+d*10+c
    g=c*100+b*10+d
    h=c*100+d*10+b
    m=d*100+b*10+c
    n=d*100+c*10+b
    k=[e,f,g,h,m,n]
    a=max(k)-min(k)
    i=i+1
print(i)

 

代码解释:
“a=int(input()) ”,让用户输入任意三位数。
“i=0
while a!=495:
    b=a%10
    c=a//10%10
    d=a//100%10
    e=b*100+c*10+d
    f=b*100+d*10+c
    g=c*100+b*10+d
    h=c*100+d*10+b
    m=d*100+b*10+c
    n=d*100+c*10+b
    k=[e,f,g,h,m,n]
a=max(k)-min(k)
i=i+1  ”,令i等于0;当a不等于495时,先求出a的个,十,百位数b,c,d。然后将这三个数字进行随机组合,并依次将其存入列表k中。找出列表中的最大数和最小数,并用最大数减去最小数,将差值赋给a。每循环一次,i值就加1;如此循环,直至a=495。
“print(i) ”,打印i最终值,即循环的次数。

 

运行效果展示:

5b1a1b8fd397430698c64dbf204435f3.jpg
 

933cfc455f0642289cdb61f6ecd4f9ce.jpg 

       (声明:以上内容均为原创)

 

标签:10,数字,最大数,python,变换,黑洞,三位数,495,100
From: https://blog.csdn.net/2401_83954530/article/details/139575095

相关文章

  • Keysight 是德 DSOX3054G 数字示波器
    DSOX3054G示波器:500MHz,4个模拟通道DSOX3054G500MHz示波器提供了4个模拟通道、4Mpts存储器和1,000,000波形/秒的捕获率,以及8.5英寸电容触摸屏和区域触摸触发功能,同时标配嵌入式软件,其中可提供波形和测量直方图。500MHz4个模拟通道8.5英寸大尺寸电容触摸屏让......
  • 【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 最富裕的小家庭(100分) - 三语言AC
    ......
  • Python爬虫:通过js逆向了解某音请求接口参数a_bogus加密过程
    1.前言需要提前说明以下,本篇文章讲述的内容仅供学习,切莫用于商业活动,如若被相关人员发现,本小编概不负责!切记。。本次分析的接口为:https://www.douyin.com/aweme/v1/web/discover/search/它的请求方式为:GET请求需要的参数有:请求参数中需要进行js逆向是:a_bogus必须需要的请......
  • python实现自定义线程池
    线程池ThreadPool对象的几个关键方法:get_idle_num():获得当前空闲线程的数量submit(task:callable):把一个任务(实际上就是一个函数)提交到线程池中执行.如果没有空闲线程则阻塞.wait_idle():阻塞,直到有空闲线程stop():停止线程池中的所有线程.(注意:非强制停止,......
  • Python 中 `return` 语句的主要作用
    在Python中,`return`语句用于从函数中返回一个值,并终止函数的执行。`return`语句是函数中最重要的控制流语句之一,它决定了函数的输出和执行流程。以下是`return`语句的主要作用和一些示例:###主要作用1. 返回值:  -`return`语句将一个值(或多个值)从函数传递给调用者。这......
  • python里装饰器的作用是什么
    在Python中,装饰器(decorator)是一种高级函数,用于修改或扩展其他函数或方法的行为,而无需直接修改它们的代码。装饰器常用于以下场景:日志记录:记录函数的调用信息,如函数名、参数和返回值。权限验证:在执行函数前检查用户是否有权限。性能测量:测量函数的执行时间。缓存:缓存函数的返回......
  • Python魔法之旅-魔法方法(25)
    目录一、概述1、定义2、作用二、应用场景1、构造和析构2、操作符重载3、字符串和表示4、容器管理5、可调用对象6、上下文管理7、属性访问和描述符8、迭代器和生成器9、数值类型10、复制和序列化11、自定义元类行为12、自定义类行为13、类型检查和转换14、自......
  • Python魔法之旅-魔法方法(23)
    目录一、概述1、定义2、作用二、应用场景1、构造和析构2、操作符重载3、字符串和表示4、容器管理5、可调用对象6、上下文管理7、属性访问和描述符8、迭代器和生成器9、数值类型10、复制和序列化11、自定义元类行为12、自定义类行为13、类型检查和转换14、自......
  • Python中的异常处理详解
    异常处理是编程中常见的一项任务,用于处理程序在运行时可能发生的错误情况。Python提供了强大的异常处理机制,使得开发者能够更好地控制和处理程序的异常情况。本文将深入探讨Python中的异常处理,包括异常的基本概念、异常处理语句、异常类型以及如何自定义异常。目录异常的......
  • 基于Python的桌面定时提醒小程序
     分享一个自己之前做的小程序,主要功能有两个:可以间隔固定时间弹窗提醒,间隔的时间以及重复的次数可以自己选定,提示的内容也可以手动输入;设定具体的时间点,定时提醒,提示的内容也可以手动输入;自己用了这个小程序已经快两年了,感觉体验还不错,所以就拿出来分享下,小程序是用Python......