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

这是一道模拟题,大致题意就:是偶数除以2,奇数(3n+1)除以2,到1结束
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include<iostream>
using namespace std;
 
int cnt=0;
void cal(int n)
{
    if(n==1)
    {
        cout<<cnt<<endl;
    }
    else if(n%2==1)
    {
        n=3*n+1;
        n=n/2;
        cnt++;
        cal(n);
    }
    else if(n%2==0)
    {
        n=n/2;
        cnt++;
        cal(n);
    }
}
int main()
{
    int n;
    while(cin>>n)
    {
        cnt=0;
        cal(n);
    }
 
    return 0;
}

  

posted @   职场亮哥  阅读(323)  评论(0编辑  收藏  举报
编辑推荐:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示