PC/UVa IDs: 110101/100
Popularity: A
Success rate: low Level: 1
测试地址:
https://vjudge.net/problem/UVA-100

[问题描述]

考虑如下的序列生成算法:从整数 n 开始,如果 n 是偶数,把它除以 2;如果 n 是奇数,把它乘 3 加1。用新得到的值重复上述步骤,直到 n = 1 时停止。例如,n = 22 时该算法生成的序列是:
22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1

人们猜想(没有得到证明)对于任意整数 n,该算法总能终止于 n = 1。这个猜想对于至少 1 000 000内的整数都是正确的。

对于给定的 n,该序列的元素(包括 1)个数被称为 n 的循环节长度。在上述例子中,22 的循环节长度为 16。输入两个数 i 和 j,你的任务是计算 i 到 j(包含 i 和 j)之间的整数中,循环节长度的最大值。

[输入]

输入每行包含两个整数 i 和 j。所有整数大于 0,小于 1 000 000。

[输出]

对于每对整数 i 和 j,按原来的顺序输出 i 和 j,然后输出二者之间的整数中的最大循环节长度。这三个整数应该用单个空格隔开,且在同一行输出。对于读入的每一组数据,在输出中应位于单独的一行。

[样例输入]

1 10
100 200
201 210
900 1000

[样例输出]

1 10 20
100 200 125
201 210 89
900 1000 174

代码

暴力枚举

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{int i,j,ans[1000];while(cin>>i>>j){memset(ans,0,sizeof(ans));for(int a=i;a<=j;a++){int x=a;while(x!=1){if(x%2==0){x/=2;ans[a]++;}else{x=3*x+1;ans[a]++;}}}int temp=*max_element(ans+i,ans+j);cout<<i<<' '<<j<<' '<<temp+1<<endl;}return 0;
}

Runtime error

#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{int i,j;while(scanf("%d %d",&i,&j)!=EOF){cout<<i<<' '<<j<<' ';int min,max,ans=0,temp=0;if(i>j){min=j;max=i;}else{min=i;max=j;}for(int a=min;a<=max;a++){int x=a;while(x!=1){if(x%2==0) x/=2;else x=x*3+1;ans++;}ans++;if(a==min)temp=ans;else{if(ans>temp) temp=ans;}ans=0;}cout<<temp<<endl;}
}

Accepted

每周一题 —— 3n+1问题相关推荐

  1. 复旦高等代数 I(17级)每周一题

    本学期将继续进行高等代数每周一题的活动.计划从第二教学周开始,到第十六教学周为止(根据法定节假日安排,中间个别周会适当地停止),每周的周末将公布1-2道思考题,供大家思考和解答.每周一题通过" ...

  2. 复旦高等代数 II(17级)每周一题

    本学期将继续进行高等代数每周一题的活动.计划从第一教学周开始,到第十六教学周为止(根据法定节假日安排,中间个别周会适当地停止),每周的周末将公布1道思考题(共16道),供大家思考和解答.每周一题通过& ...

  3. 2019蓝桥杯每周一题第二周之Mineweep(扫雷)

    2019蓝桥杯每周一题第二周之Mineweep(扫雷) 写在开头: 写这个题的时候真的是一次次的纠错,题不难,里面的逻辑关系有复杂,每一次都以为会运行正确了,结果又一个小地方出错,写了一上午还是有问题 ...

  4. 每周一题3_杭电ACM_Tian Ji -- The Horse Racing

    Tian Ji – The Horse Racing 文章目录 Tian Ji -- The Horse Racing 原题描述 测试代码 思路 附: 题目来源:杭电ACM 1.3.1 原题描述 Pr ...

  5. 蓝桥杯:每周一题之高斯的日记

    [问题描述] 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的 ...

  6. 考研408每周一题(2019 41)

    2019年(单链表)       41.(13分)设线性表L=(a1,a2,a3,...,a(n-2),a(n-1),an)采用带头结点的单链表保存,链表中的结点定义如下: typedef struc ...

  7. cdoj 1246 每周一题 拆拆拆~ 分解质因数

    拆拆拆~ Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1246 Descri ...

  8. [问题2014S07] 复旦高等代数II(13级)每周一题(第七教学周)

    [问题2014S07]  设 \(A\in M_n(\mathbb{K})\) 在数域 \(\mathbb{K}\) 上的初等因子组为 \(P_1(\lambda)^{e_1},P_2(\lambda ...

  9. 随心所欲b超工作站图像处理_第七讲随心所欲版医学影像工作站软件每周一题...

    随心所欲版工作站系列常见的一些软件产品举例(内镜超声等视频医学影像工作站系列.显微图像分析系统系列.CT/DR等DICOM数字影像工作站系列): 1)二维.三维超声 超声医学影像工作站 数字化超声影像 ...

最新文章

  1. MySQL 解压版创建用户密码
  2. python用selenium爬取网页数据_Python项目实战:使用selenium爬取拉勾网数据
  3. bzoj 3864: Hero meet devil [dp套dp]
  4. Laravel-5.1验证码mews captcha
  5. Java多线程编程实战指南
  6. python 16进制加法_在python中追加2个十六进制值
  7. Spring中ApplicationContext的事件机制
  8. 5.1.4 IO软件层次结构
  9. 8080端口被其他程序占用,Failed to start connector [Connector[HTTP/1.1-8080]],查看占用程序并关闭
  10. Linux监控工具介绍系列——smem
  11. 误报的java.sql.SQLException: Parameter number 21 is not an OUT parameter
  12. 95-10-132-启动-TransactionCoordinator-源码
  13. POJ 2082Lost Cows
  14. linux系统中看视频,怎么在linux里看视频啊?
  15. 计算机网络面试基础知识
  16. 分集增益的不同合并方式的性能分析
  17. linux 查看隐藏文件大小,Linux运维知识之linux下显示隐藏目录或隐藏文件占用空间大小...
  18. starbound服务器文件,starbound星界边境开新档并从老存档转移物资的方法_快吧单机游戏...
  19. ODOO实现环境检测机构检测业务管理系统
  20. Centos7制作Openstack下win7 镜像

热门文章

  1. 采用集成的Windows验证和使用Sql Server身份验证进行数据库的登录
  2. _variant_t和_bstr_t
  3. CodeForces798cMike and gcd problem
  4. Integration testing
  5. 香港小學一年級入學考試題
  6. Linux软件安装之RPM的安装技巧
  7. Remoting系列(二)----建立第一个入门程序
  8. html字体渐变颜色的设置颜色代码,使用CSS3实现字体颜色渐变的实现
  9. 求离散数据的突变点_Nat Gen | 染色质三维构象决定突变分布
  10. python安装opencv出现错误,通过pip安装opencv时出错