zoukankan      html  css  js  c++  java
  • 9.3n+1问题

    时间限制: 1 s

     空间限制: 32000 KB

     题目等级 : 白银 Silver

     查看运行结果

    题目描述 Description

    3n+1问题是一个简单有趣而又没有解决的数学问题。这个问题是由L. Collatz1937年提出的。克拉兹问题(Collatz problem)也被叫做hailstone问题、3n+1问题、Hasse算法问题、Kakutani算法问题、Thwaites猜想或者Ulam问题。

    问题如下:

    1)输入一个正整数n

    2)如果n=1则结束;

    3)如果n是奇数,则n变为3n+1,否则n变为n/2

    4)转入第(2)步。

    克拉兹问题的特殊之处在于:尽管很容易将这个问题讲清楚,但直到今天仍不能保证这个问题的算法对所有可能的输入都有效——即至今没有人证明对所有的正整数该过程都终止。

     

    输入描述 Input Description

    第一行是一个整数T.表示输入数据的组数.

    第二行是T个正整数n.

    输出描述 Output Description

    对于每个正整数n,每行输出一个数s,表示n通过多少步变换会变成1,如果n无法变成1,则输出-1.

    样例输入 Sample Input

    3

    2 3

    样例输出 Sample Output

    0

    1

    7

    数据范围及提示 Data Size & Hint

    1 <= T <= 100

    1 <= n <= 10000

    代码:

    #include

    using namespace std;

    #include

    int t,n,sum;

    int main()

    {

           cin>>t;

           for(int i=1;i<=t;++i)

           {

                  scanf("%d",&n);

                  sum=0;

                  while(n>1)

                  {

                         if(n%2==1)

                         {

                                n=n*3+1;

                                sum++;

                         }

                         if(n%2==0)

                         {

                                n/=2;

                                sum++;

                         }

                  }

                  if(n<1)

                  printf("-1");

                  else{

                         printf("%d ",sum);

                  }

           }

           return 0;

    }

  • 相关阅读:
    SAP S/4HANA extensibility扩展原理介绍
    SAP CRM系统订单模型的设计与实现
    使用nodejs代码在SAP C4C里创建Individual customer
    SAP Cloud for Customer Account和individual customer的区别
    Let the Balloon Rise map一个数组
    How Many Tables 简单并查集
    Heap Operations 优先队列
    Arpa’s obvious problem and Mehrdad’s terrible solution 思维
    Passing the Message 单调栈两次
    The Suspects 并查集
  • 原文地址:https://www.cnblogs.com/c1299401227/p/5370814.html
Copyright © 2011-2022 走看看