zoukankan      html  css  js  c++  java
  • C算法--入门篇(1)入门模拟1

    卡拉兹(Callatz)猜想

    对任何一个自然数n,如果它是偶数,那么将他砍掉一半;如果它是奇数,那么把(3*n+1)砍掉一半。这样一直反复砍下去,最后一顶在某一步得到n=1。

    卡拉兹在1950年的世界数学家大会上公布了这个猜想。

    此处非要证明卡拉兹猜想,而是对给定的任何一个不超过1000的正整数n简单的数一下,需要多少步才能得到n=1。

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

    输出格式:

    输出从n计算到1需要的步数

    输入样例

    3

    输出样例:
    5

     1 #include <stdio.h> 
     2 int main(){
     3     int n,step=0;
     4     scanf("%d",&n);
     5     while(n!=1){
     6         if(n%2==0)n=n/2;
     7         else n=(3*n+1)/2;
     8         step++;
     9     }
    10     printf("%d
    ",step);
    11     return 0;
    12 }
    PAT B1001
  • 相关阅读:
    CF1416D Graph and Queries
    Wordpress建站系统相关
    微观经济学
    Preface
    Thread pool in chromium
    [fllutter engine] 并发消息队列
    bugku misc
    python 3.1学习
    HTML&CSS
    DOM技术点
  • 原文地址:https://www.cnblogs.com/Catherinezhilin/p/11138247.html
Copyright © 2011-2022 走看看