TB椰程 TypeBuddy 打字搭子

练35.4 奶牛的数字游戏

C++语法 · 循环结构 · 代码 · cpp · 难度 3/5 · 共 408 字

统计角谷变换到 1 需要的步数

  • C++语法
  • 练习

正文

// 原题:https://oj.yecheng.tv/p/P214
// 题意:奇数乘 3 加 1,偶数除以 2,
//       每变一次得 1 分,变到 1 游戏结束,求得分。
// 思路:与角谷猜想同样的变换,
//       只是这次统计变换的次数。
#include <iostream>
using namespace std;

int main() {
    long long n;
    cin >> n;
    int score = 0;
    // 变到 1 为止,每次记 1 分
    while (n != 1) {
        if (n % 2 == 1) n = n * 3 + 1;
        else n /= 2;
        score++;
    }
    cout << score << endl;
    return 0;
}

C++语法 · 循环结构的其它内容

打字首页 · 词库画廊 · 编程打字 · 指法入门 · 天梯榜 · 数据分析 · 班级课堂 · 关于我们
椰程 TypeBuddy 打字搭子 —— 键盘指法练习 · 单词记忆 · 班级课堂 · 在线 PK