害死人不偿命的(3n+1)猜想 —— 《C语言代码笔记》

今天逛论坛碰到一个有趣的题,给大家分享

题目

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

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

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

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

输入样例: 3 输出样例: 5

题目还是很简单的,用个奇偶判断就行,我就不解析了

#include<stdio.h> int main() { int n, count=0; scanf("%d", &n); while(n!=1) { if(n%2==0) { n=n/2; count++; } else { n=(3*n+1)/2; count++; } } printf("%d\n", count); return 0; }

123456789101112131415161718192021

#include<stdio.h>int main(){ int n, count=0; scanf("%d", &n); while(n!=1) { if(n%2==0) { n=n/2; count++; } else { n=(3*n+1)/2; count++; } } printf("%d\n", count); return 0; }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏恰同学骚年

自己动手写游戏:坦克撕逼大战

START:最近在公交车上无聊,于是用平板看了看下载的坦克大战的开发教程,于是在晚上回家后花了两天模仿了一个,现在来总结一下。

1726
来自专栏工科狗和生物喵

【计算机本科补全计划】CCF计算机职业资格认证 2017-03 试题初试

正文之前 我在之前的文章中提到过,我的老师要求我的CCF 考试考个280分来打个底,(没错,我就是那个横跨考研、工作、保研三大领域的男人)相当于是测试下我的能力...

9369
来自专栏顶级程序员

为什么Python是入行人工智能的首选语言?

在所有编程语言里,Python并不算萌新,从1991年发布第一个版本,至今已经快30年了。

1784
来自专栏HansBug's Lab

1015: [JSOI2008]星球大战starwar

1015: [JSOI2008]星球大战starwar Time Limit: 3 Sec  Memory Limit: 162 MB Submit: 3001...

2727
来自专栏杨光的专栏

千亿关系链下的新增共同好友计算

本文介绍一种千亿关系链下的日新增共同好友挖掘算法 --NTE 算法。该算法基于分治的思想,将新增共好友计算问题,转换为更易于运算与实现的三角形计算问题。

9460
来自专栏小樱的经验随笔

CTF---密码学入门第三题 奇怪的短信

奇怪的短信分值:10 来源: Ayn 难度:易 参与人数:5117人 Get Flag:2623人 答题人数:2858人 解题通过率:92% 收到一条奇怪的...

3936
来自专栏流柯技术学院

JMeter专题系列(七)聚合报告之 90% Line

90% Line - 90% of the samples took no more than this time. The remaining samples...

1254
来自专栏牛客网

滴滴java新锐实习一面

1680
来自专栏racaljk

Leetcode 746. Min Cost Climbing Stairs 最小成本爬楼梯 (动态规划)

有一个楼梯,第i阶用cost[i](非负)表示成本。现在你需要支付这些成本,可以一次走两阶也可以走一阶。 问从地面或者第一阶出发,怎么走成本最小。

1023
来自专栏算法channel

动态规划中篇:爬楼梯

主要推送关于对算法的思考以及应用的消息。培养思维能力,注重过程,挖掘背后的原理,刨根问底。本着严谨和准确的态度,目标是撰写实用和启发性的文章,欢迎您的关注。 0...

3989

扫码关注云+社区