PAT 1001 害死人不偿命的(3n+1)猜想

简介: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。

题目


卡拉兹(Callatz)猜想:


对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……


我们今天的题目不是证明卡拉兹猜想,而是对给定的任一不超过 1000 的正整数 n,简单地数一下,需要多少步(砍几下)才能得到 n=1?


输入格式: 每个测试输入包含 1 个测试用例,即给出正整数 n 的值。


输出格式: 输出从 n 计算到 1 需要的步数。


输入样例:
3
结尾无空行
输出样例:
5
结尾无空行

解题思路


num = int(input())
count = 0
while num != 1:
    if num%2 != 0:
        num = 3*num +1
    num = num // 2
    count = count + 1
    # print(num)
print(count)


目录
相关文章
|
编解码 前端开发 JavaScript
ThreeJs制作模型图片
这篇文章介绍了如何使用Three.js将一张图片转化为3D场景中的像素化模型,通过提取图片的像素颜色并将它们应用到3D立方体上,形成一种特殊的图像展示效果。
229 0
ThreeJs制作模型图片
|
存储 SQL 关系型数据库
(二十一)MySQL之高并发大流量情况下海量数据分库分表的正确姿势
从最初开设《全解MySQL专栏》到现在,共计撰写了二十个大章节详细讲到了MySQL各方面的进阶技术点,从最初的数据库架构开始,到SQL执行流程、库表设计范式、索引机制与原理、事务与锁机制剖析、日志与内存详解、常用命令与高级特性、线上调优与故障排查.....,似乎涉及到了MySQL的方方面面。但到此为止就黔驴技穷了吗?答案并非如此,以《MySQL特性篇》为分割线,整个MySQL专栏从此会进入“高可用”阶段的分析,即从上篇之后会开启MySQL的新内容,主要讲述分布式、高可用、高性能方面的讲解。
861 1
|
存储 NoSQL MongoDB
docker安装Mongodb
这篇文章详细说明了如何使用Docker安装MongoDB,包括拉取镜像、创建并运行容器、数据持久化存储以及访问容器内的MongoDB服务的具体步骤。
1150 1
|
存储 关系型数据库 MySQL
【阿里规约】阿里开发手册解读——数据库和ORM篇
从命名规范、建表规范、查询规范、索引规范、操作规范等角度出发,详细阐述MySQL数据库使用过程中所需要遵循的各种规范。
【阿里规约】阿里开发手册解读——数据库和ORM篇
|
应用服务中间件 nginx
Nginx的源码安装
Nginx的源码安装
377 0
|
前端开发 JavaScript
百度Echarts绘制动态折线图
百度Echarts绘制动态折线图
百度Echarts绘制动态折线图
|
存储 Prometheus 监控
快速部署Grafana日志监控+Nginx封禁IP
事情的起因还要从某天突然发现服务有明显异常的访问记录说起,虽然我这1核2g的小机器没什么攻击的价值,但也有了部署一套监控系统的想法。
|
Java
数据结构之第十章、Java对象的比较
数据结构之第十章、Java对象的比较
171 0
|
数据可视化 数据挖掘 Python
数据分析三剑客【AIoT阶段一(下)】(十万字博文 保姆级讲解)—Matplotlib—数据可视化入门—基础知识(3)(三)
你好,感谢你能点进来本篇博客,请不要着急退出,相信我,如果你有一定的 Python 基础,想要学习 Python数据分析的三大库:numpy,pandas,matplotlib;这篇文章不会让你失望,本篇博客是 【AIoT阶段一(下)】 的内容:Python数据分析,
225 0
数据分析三剑客【AIoT阶段一(下)】(十万字博文 保姆级讲解)—Matplotlib—数据可视化入门—基础知识(3)(三)