c++ pat 乙级 --1001 害死人不偿命的(3n+1)猜想
1001 害死人不偿命的(3n+1)猜想 (15 分)
卡拉兹(Callatz)猜想:
对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……
我们今天的题目不是证明卡拉兹猜想,而是对给定的任一不超过 1000 的正整数 n,简单地数一下,需要多少步(砍几下)才能得到 n=1?
输入格式:
每个测试输入包含 1 个测试用例,即给出正整数 n 的值。
输出格式:
输出从 n 计算到 1 需要的步数。
输入样例:
3
输出样例:
5
结果:
--------------------------
测试点 | 结果 | 耗时 | 内存 |
---|---|---|---|
0 | 答案正确 | 3 ms | 384KB |
1 | 答案正确 | 2 ms | 384KB |
2 | 答案正确 | 2 ms | 384KB |
3 | 答案正确 | 2 ms | 368KB |
4 | 答案正确 | 3 ms | 380KB |
#include<iostream>
using namespace std;
int main()
{
int a;
cin >>a;
int t = 0;
while(a!=1)
{
if ( a%2 == 0)
{
a=a/2;
t++;
}
else
{
a= 3*a+1;
a = a/2;
t++;
}
}
cout<<t<<endl;
return 0;
}
c++ pat 乙级 --1001 害死人不偿命的(3n+1)猜想相关推荐
- PAT(乙级) 1001 害死人不偿命的(3n+1)猜想 (15 分) (python3)
PAT(乙级) 1001 害死人不偿命的(3n+1)猜想 (15 分) (python3) 第一次写点博客记录自己学习算法的过程,因为个人能力有限,会不定期发布一些PAT上题目的代码 PAT 乙级的1 ...
- PAT乙级—1001. 害死人不偿命的(3n+1)猜想 (15)-native
卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半.这样一直反复砍下去,最后一定在某一步得到n=1.卡拉兹在1950年的世界数 ...
- PAT乙级——1001害死人不偿命的(3n+1)猜想(太简单)
#include<iostream> using namespace std;int main(){int n;int ans=0;//记录走过的步数 cin>>n;while ...
- [PAT乙级]1001 害死人不偿命的(3n+1)猜想
卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 (3n+1) 砍掉一半.这样一直反复砍下去,最后一定在某一步得到 n=1.卡拉兹在 1950 ...
- PAT(乙级) 1001 害死人不偿命的(3n+1)猜想 C++
卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 (3n+1) 砍掉一半.这样一直反复砍下去,最后一定在某一步得到 n=1.卡拉兹在 1950 ...
- pat 乙级 1001 害死人不偿命的(3n+1)猜想(C++)
题目 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 (3n+1) 砍掉一半.这样一直反复砍下去,最后一定在某一步得到 n=1.卡拉兹在 1 ...
- PAT 乙级1001 害死人不偿命的(3n+1)猜想
卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 (3n+1) 砍掉一半.这样一直反复砍下去,最后一定在某一步得到 n=1.卡拉兹在 1950 ...
- PAT 乙级 1001. 害死人不偿命的(3n+1)猜想 (15) Java版
卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半.这样一直反复砍下去,最后一定在某一步得到n=1.卡拉兹在1950年的世界数 ...
- PAT 乙级 1001 害死人不偿命的(3n+1)猜想(C语言)
#include <stdio.h> int main() {int i=0,n;scanf("%d",&n);while(n!=1){if(n%2==1){n ...
最新文章
- 作价20亿美元!英特尔收购以色列AI芯片公司Habana Labs
- 为MyEclipse加入自己定义凝视
- 设计模式学习(六):重构与模式,推荐书籍(完)
- 成功解决pypmml.base.PmmlError: (‘MalformedInputException‘, ‘Input length = 1‘)
- 10 个非常有用的 AngularJS 框架
- java代码审计ssrf危险函数_某租车系统Java代码审计之后台注入漏洞分析
- 个人数据在暗网的交易价格是多少?
- Spring MVC 文件上传 文件下载
- 机器学习定义及常用算法
- c语言如何框出视频或图像中的车辆,视频图像中的车辆检测跟踪和分类
- SVN客户端安装与常用操作(超详细)
- 基于javaweb的大学生助学贷款管理系统项目源代码
- 34、BDS B1I星历处理实现
- Android | 安卓好用软件来袭,多御安全浏览器免费又强大
- 公司注册不满一年如何名称变更
- 用C语言基础及数学公式来简单实现土味表白
- 2020.7.7 ETH价格分析
- 如何实现用户id生成一个唯一邀请码
- 计算机最简单的爱情音乐,音乐里那些最动人的情话,适合一个人在家静静聆听...
- 2014年网研上机题目
热门文章
- 在win10 或者win7系统下装双系统ubuntu16.04教程
- 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波5 - 分段线性变换 - 灰度级分层
- 《程序是怎样跑起来的》第一章有感
- 讲二次搜索树转化为排序的双向链表
- UDLD(Unidirectional Link Detection)
- C#设计模式--模板方法模式(学习Learning hard 设计模式笔记)
- safari图片跨域
- 类的特殊成员反射异常处理
- java.lang.OutOfMemoryError: GC overhead limit exceeded
- 使用JAXP对XML文档进行DOM解析