(Python)非利克瑞尔数

news/2024/11/22 12:44:04/

【问题描述】

利克瑞尔数(Lychrel Number)指的是将该数各数位逆序翻转后形成的新数相加,并将该过程反复迭代后,结果永远无法是一个回文数的自然数。57就是一个非利克瑞尔数:57+75=132, 132+231=363,363是一个回文数。请编写程序,输入一个自然数(非利克瑞尔数),请计算其最终的回文数是多少及每次迭代过程。

注意:假设输入的整数和中间产生的整数都不超过int数据类型的表示范围。

【输入形式】

从标准输入读入一个正整数。

【输出形式】

在标准输出上输出迭代过程和最终的回文数。分行输出每次迭代过程:先输出迭代次数(从1开始计数),后跟英文冒号:,然后是两数相加等于某数的等式,其中的符号都是英文符号,没有空格。在最后一行输出最终得到的回文数。

若输入的整数本身就是回文数,则不输出任何迭代过程,直接输出该回文数。

【样例1输入】

109
【样例1输出】

1:109+901=1010
2:1010+101=1111
1111
【样例1说明】

输入的非利克瑞尔数为109,经过两次迭代可得到回文数:第一次迭代为109和其逆序数901相加得1010,第二次迭代为上次迭代得到的1010加上其逆序数101(注意:高位的0省略)得1111,1111就是最终得到的回文数。

【样例2输入】

909
【样例2输出】

909
【样例2说明】

输入的非利克瑞尔数为909,其本身为回文数,直接输出,没有迭代过程。

实现代码:

a = int(input())  # 输入一个正整数
cnt = 0  # 记录迭代次数
res = a  # 保存每次迭代过程中的两数之和def reverse(x):  # 定义函数将数的各数位逆序翻转m = xn = 0while m > 0:n = n * 10 + m % 10m = m // 10return nwhile a != reverse(a):  # 迭代cnt = cnt + 1  # 每次迭代次数往上加一res = a + reverse(a)  # 计算每次迭代过程中的两数之和print('{}:{}+{}={}'.format(cnt, a, reverse(a), res))  # 输出每次迭代过程a = res
print(res)  # 输出最终得到的回文数

运行结果:
在这里插入图片描述
在这里插入图片描述


http://www.ppmy.cn/news/529353.html

相关文章

没有时间可以浪费了!探险家伊泽瑞尔...

 发帖目录及线索: 一、ADC定位 1、 ADC定位: 2、 EZ作为ADC的优势和劣势分析 二、伊泽瑞尔技能分析 三、伊泽瑞尔出装分析 四、基于三基础上的EZ的ADC出装 五、常见的其它问题 1、 EZ技能的释放 2、 EZ的符文和天赋及召唤师技能…

威利.卡瑞尔公式

当遇到担忧的问题,就应用威利.卡瑞尔的万能公式,进行下面三件事情—— 1.问你自己:“可能发生的最坏情况是什么?” 2.如果你别无选择的话,就准备接受它。 3.然后镇定地想办法改善最坏的情况。

TREC Precision Medicine 使用Terrier进行信息检索

一、实验目标 学会使用一个信息检索系统完成给定的信息检索任务,包括创建索引、选择检索模型并设置参数、评价检索结果等等。 二、实验描述 使用一个信息检索系统,例如Galago、Elastic Search、Terrier、Anserini等,完成TREC 2018 Precisi…

【应用】布隆过滤器

布隆过滤器 布隆过滤器简介及使用场景布隆过滤器底层原理数据添加数据查询布隆过滤器的优缺点 Redis 整合布隆过滤器Java 整合布隆过滤器SpringBoot 整合 Redis 使用布隆过滤器 布隆过滤器简介及使用场景 布隆过滤器实际上是一列很长的二进制数组,在每个位置上只有…

布隆过滤器的误判率该如何计算?

作者:胡慢慢滚雪球 链接:https://www.zhihu.com/question/38573286/answer/507497251 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 在计算机中,判断一个元素是不是在一个集合中…

什么是布隆过滤器?如何使用?

欢迎搜索 文章目录 一、布隆过滤器简介二、布隆过滤器的结构三、布隆过滤器应用四、布隆过滤器的优缺点五、布隆过滤器实战六、总结 Redis缓存穿透可以通过布隆过滤器进行解决,那么什么是布隆过滤器呢?请往下看。 通常你判断某个元素是否存在用的是什么…

瑞尔集团通过上市聆讯:半年亏4.6亿 淡马锡与高瓴是股东

雷递网 雷建平 2月28日报道 口腔诊所——瑞尔集团有限公司(简称:“瑞尔集团”)日前通过聆讯,准备在香港上市。 半年期内亏损4.64亿 瑞尔集团是一家提供高端口腔医疗服务的企业。自1999年成立以来,在过往十年当中&#…

何为布隆过滤器

问题的提出 我们有一个不安全网页的黑名单,包含了100亿个黑名单网页的URL,每个网页URL最多占用64B.。 现在我们要设计一个网页过滤系统,这个系统要判断该网页是否在黑名单里,但是我们的空间有限,只有30GB. 允许有万分之一的判断…