HDOJ 1032 The 3n + 1 problem
来源:互联网 发布:facebook关闭人工智能 编辑:程序博客网 时间:2024/05/21 09:58
算法叙述:递归(也可以不用)
注意事项:
1.无聊输入,输入的两个数大小关系不确定
本题输入的两个数大小关系不确定,但是不能交换两个数,因为最后要原样输出
2.过大的数组
过大的数组应该定义为全局变量
3.数组避免重复运算
对不每组不同的输入,会有些数据可以重复利用的,比如对于输入1 10和5 15来说,重复部分是5和10之间的数据。
也就是说,我们在处理每组数据时,不必要对每组的数据逐一处理,聪明的做法就是预先整一个大的数组,把我们所需要的所有的数据存下来,用的话直接去取就可以了。这样可以避免大量重复的计算。
我的代码:
#include<iostream>#include<algorithm>using namespace std;int a[1000000]={0};int main(){ int x,y,beg,end; int i,j,counter=0,_max=0; while(cin>>x>>y) { if(x>y) { beg=y; end=x; } else { beg=x; end=y; } for(i=beg;i<=end;i++) { if(!a[i]) { for(j=i;j!=1;) { if(j%2) j=3*j+1; else j/=2; counter++; } a[i]=counter+1; counter=0; } _max=max(_max,a[i]); } cout<<x<<' '<<y<<' '<<_max<<endl; _max=0; } return 0;}
0 0
- 【HDOJ】1032 -> The 3n + 1 problem
- hdoj 1032 The 3n + 1 problem
- HDOJ 1032 The 3n + 1 problem
- HDOJ The 3n + 1 problem 1032
- HDOJ 1032 The 3n + 1 problem
- HDOJ 1032 The 3n+1 problem
- hdoj-1032-The 3n + 1 problem
- HDOJ 1032 The 3n + 1 problem解题报告
- hdoj.1032 The 3n + 1 problem 20140726
- HDOJ 1032 The 3n + 1 problem(水)
- HDOJ 1032(POJ 1207) The 3n + 1 problem
- hdoj 1032 The 3n + 1 problem(细节细节)
- Hdoj 1032 The 3n+1 problem (看题目很重要)
- HDOJ The 3n + 1 problem(Java)
- HDOJ, 杭电1032, The 3n+1 problem. POJ, 北大OJ,1207....数学题。。又一发
- 杭电OJ(HDOJ)1032题:The 3n + 1 problem(穷举,水题)
- ACM--次数最多--HDOJ 1032--The 3n + 1 problem--水(数据太弱)
- hdu 1032 The 3n + 1 problem
- poj 1177 线段树+离散化+扫描线 求矩形并的轮廓长
- cocos2d-x 的坐标
- 排序—插入排序算法
- java 10.15
- pat 1022. Digital Library (字符串水题)
- HDOJ 1032 The 3n + 1 problem
- 百度地图覆盖层OverLayer用自定义的View来替换
- Animation Curve
- Codeforces Round #225 (Div. 2)做题感想
- java学习笔记28
- 黑马程序员--java中资源文件的各种读取方式
- 手工注入
- jQuery中filter(),not(),split()的用法
- Lua 的编辑调试系列教材(二)