zoukankan      html  css  js  c++  java
  • q1095

    一,写题

    1,我这个递归的错误我挺想搞出来的

    int fa(int x)
    {
        if(x==1) return cnt;
        if(x%2==0)
        {
            x=x/2;
            cout<<"测试1:"<<x<<endl;
            cnt++;
            if(x==1)
               {
                   cout<<"测试3:"<<cnt<<endl;
                 return cnt;
                 }
                 
            else
               fa(x);
        }
        if(x%2!=0)
        {
            x=x*3+1;
            cout<<"测试2:"<<x<<endl;
            cnt++;
            if(x==1)
                {
                return cnt;
            }
            else
               fa(x);
        }
        
    }

    2,希望你能搞出来。

    因为你用自己方法不会的时候你再搞出来好像才是关键。

    3,体现的好像是我对递归的不够。。掌握。。

    4,我他妈好难受。。。想哭。。

    5,希望你能好好把这个弄清楚。

     1  1 #include<iostream>
     2  2 using namespace std;
     3  3 int a,b;
     4  4 int cnt=1;
     5  5 int big=1;
     6  6 void  fa(int x)
     7  7 {
     8  8     if(x==1) return ;
     9  9     
    10 10     if(x%2==0)
    11 11     {
    12 12         x=x/2;
    13 13         cnt++;
    14 14         return fa(x);
    15 15     }
    16 16     if(x%2!=0)
    17 17     {
    18 18         x=x*3+1;
    19 19         cnt++;
    20 20         return fa(x);
    21 21     }
    22 22 }
    23 23 int main(){
    24 24     int p,t;
    25 25     
    26 26     while(cin>>a>>b)
    27 27     {
    28 28         if(a>b)
    29 29         {
    30 30         t=a;
    31 31         p=b;
    32 32         }
    33 33         else
    34 34         {
    35 35             p=a;
    36 36             t=b;
    37 37         }
    38 38         big=1;
    39 39         for(int j=p;j<=t;j++)
    40 40         {
    41 41             cnt=1;
    42 42             fa(j);
    43 43             if(cnt>=big)
    44 44                big=cnt; 
    45 45          } 
    46 46          cout<<a<<" "<<b<<" "<<big<<endl;
    47 47     }
    48 48     return 0;
    49 49 }

    二,总结

    1,首先对待每道有价值的题目,第一次OJ过去了,然后进行总结,总结主要是自己缺乏什么。

    2,然后思考全面后再来一遍。

    3,复习就是做题,当然也可以。。你得找些特殊的方法去解决它。

    4,我对于递归的理解。

    5,对于这种没有给你说清楚几组数据的题你该怎么做。

    while(cin>>x>>y)
    {}

    哈哈挺有意思的。

    6,数据里面的坑,所以对待题目,你自己要给自己找坑。

    比如有的数据i>j。

    我也是呵呵呵了。

    7,最后那个big的更新,倒是弄了我挺久的。

    这个些都算些什么?

    8,不管怎么样,复习后好好思考一遍就上吧。

    四,

    1,妈的果然不行了。

     1 if(!x%2) 2 if(x%2) 

    2,这个不行的。

    3,我哭了

     1 if(a>b)
     2         {
     3         t=a;
     4         p=b;
     5         }
     6         else
     7         {
     8             p=a;
     9             t=b;
    10         }

    没有else  ,我错了!

  • 相关阅读:
    C# 创建一个日志文件
    C# WinForm程序添加引用后调用静态方法时报“Interfaces_Helper.Global”的类型初始值设定项引发异常。---> System.NullReferenceException: 未将对象引用设置到对象的实例。
    SqlServer 一些操作
    多线程处理sql server2008出现Transaction (Process ID) was deadlocked on lock resources with another process and has been chose问题
    SQL
    WinForm 弹框确认后执行
    C#强制清除缓存
    C#TextBox自动滚动到最低端
    XmlDocument To String
    ROCK 算法
  • 原文地址:https://www.cnblogs.com/beiyueya/p/12076983.html
Copyright © 2011-2022 走看看