[PAT B1001は、(3N + 1)推測の魅力を殺し

[PAT B1001は、(3N + 1)推測の魅力を殺し

Kharazi(Callatz)予想:
任意の自然数のNが偶数である場合、それは半分に、半分が奇数の場合、(3N + 1)カット。これを繰り返し、最後にn = 1のステップで取得するようになった、切断されています。数学の1950 World CongressでKharaziは、この推測を発表しました伝説のエール大学の教師と学生啓東元だった、必死にこの一見愚かな素朴な命題を証明したい、学生は不注意そんなにノイズ研究、1枚ののみのカードを結果(3N 1)、一部の人々は、これは陰謀であると言うのでKharaziが意図的にアメリカの数学教育と研究の進展を遅らせた、......
私たちの話題今日は証拠民家ラズの推測ではなく、1000年を超えていないいずれかの与えられました正の整数nが、単に取得するにはどのように多くの手順(いくつかのカット)、数を数えるのn = 1が必要?
入力フォーマット:各試験は、自然数nの値が与えられ、すなわち、テスト入力を含みます。
出力形式:Nステップの所望の数の出力から算出されます。
サンプル入力:
3
出力サンプル:
5

#include <stdio.h>

int time = 0;

int calculate(int thisnum) {

    if (thisnum == 1) {
        return time;
    } else if (thisnum % 2 == 0) {
        time++;
        thisnum = thisnum / 2;
        calculate(thisnum);
    } else {
        time++;
        thisnum = 3 * thisnum + 1;
        calculate(thisnum / 2);
    }

}

int main() {

    int num;
    scanf("%d", &num);
    printf("%d", calculate(num));
    return 0;
}

テスト結果:
ここに画像を挿入説明

公開された33元の記事 ウォンの賞賛1 ビュー4162

おすすめ

転載: blog.csdn.net/qq_39827677/article/details/103855179