非利克瑞尔数

简介: 非利克瑞尔数

【问题描述】

利克瑞尔数(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,其本身为回文数,直接输出,没有迭代过程。

【评分标准】

该程序要求输出求非利克瑞尔数的回文数的迭代过程。

def sort_num(n):
    n1 = str(n)
    n2 = n1[::-1]
    n3 = int(n2)
    return n3


def pr(s):
    flag0 = True
    c = str(s)
    for m in range(int(len(c) / 2)):
        if c[m] != c[-m - 1]:
            flag0 = False
            break
    return flag0


figure = int(input())
start = pr(figure)
if not start:
    num = 0
    while 1:
        temp = sort_num(figure) + figure
        num = num + 1
        print(f'{num}:{figure}+{sort_num(figure)}={temp}')
        figure = temp
        if pr(temp):
            break
    print(figure)
else:
    print(figure)
相关文章
|
SQL 缓存 Java
如何判断mybatis 开启二级缓存 和二级缓存详细讲解
如何判断mybatis 开启二级缓存 和二级缓存详细讲解
371 0
hutool工具获得一个只包含数字的字符串
hutool工具获得一个只包含数字的字符串
|
Web App开发 JavaScript iOS开发
Xcode9用Safari调试模拟器JS代码显示“无可检查的应用程序”的原因
Xcode9用Safari调试模拟器JS代码显示“无可检查的应用程序”的原因
1295 0
|
7月前
|
人工智能 自然语言处理 API
销售易NeoCRM与Salesforce:优势特色大比拼
本文对比了销售易NeoCRM与Salesforce两款CRM系统。销售易NeoCRM功能涵盖销售、客户、营销管理等,具AI赋能和移动办公优势,界面现代化,价格灵活适合中小企业;Salesforce功能全面,AI平台强大,生态系统丰富,全球化支持出色,适合大型及跨国企业。两者各有优劣,企业应根据自身需求选择合适的CRM系统,以实现高效管理和业务增长。
|
存储 关系型数据库 MySQL
【Java面试题汇总】MySQL数据库篇(2023版)
聚簇索引和非聚簇索引、索引的底层数据结构、B树和B+树、MySQL为什么不用红黑树而用B+树、数据库引擎有哪些、InnoDB的MVCC、乐观锁和悲观锁、ACID、事务隔离级别、MySQL主从同步、MySQL调优
【Java面试题汇总】MySQL数据库篇(2023版)
|
机器学习/深度学习 人工智能 自然语言处理
AIGC在商业银行债券业务中的应用
【1月更文挑战第12天】AIGC在商业银行债券业务中的应用
240 3
AIGC在商业银行债券业务中的应用
|
消息中间件 监控 JavaScript
Node.js中的进程管理:child_process模块与进程管理
【4月更文挑战第30天】Node.js的`child_process`模块用于创建子进程,支持执行系统命令、运行脚本和进程间通信。主要方法包括:`exec`(执行命令,适合简单任务)、`execFile`(安全执行文件)、`spawn`(实时通信,处理大量数据)和`fork`(创建Node.js子进程,支持IPC)。有效的进程管理策略涉及限制并发进程、处理错误和退出事件、使用流通信、谨慎使用IPC以及监控和日志记录,以确保应用的稳定性和性能。
|
监控 搜索推荐 定位技术
HTTP状态码:如何修复 404 Not Found错误?
互联网上各种类型的网站非常多,无论用户还是网站运营者不可避免的会遇到404 Not Found错误,如果遇到404错误,我们应该如何解决呢?
766 1
|
小程序 前端开发
uniapp 微信小程序v-show 不显示
uniapp 微信小程序v-show 不显示
542 0
|
移动开发 JavaScript 前端开发
20款前端特效及部分源码
最近优化项目时看到一些实用的特效 感觉还不错 下面就分享给大家 代码量过长的我就不展示了 可以去在这里资源站 源码 部分预览下载