Hailstone HOTPO

Time Limit: 2000/1000ms (Java/Others)

Problem Description:

The hailstone sequence is formed in the following way:
(1) If n is even, divide it by 2 to get n'
(2) If n is odd, multiply it by 3 and add 1 to get n'
It is conjectured that for any positive integer number n, the sequence will always end in the repeating cycle: 4, 2, 1, 4, 2, 1,... Suffice to say , when n == 1, we will say the sequence has ended.
Write a program to determine the largest value in the sequence for a given n.
译文:以下面的方式形成在冰雹序列:
(1)如果n为偶数,除以2以获得N“
(2)如果n为奇数,乘以3,并添加1以获得N”
据推测,对于任何正整数n,序列将总是以重复周期结束:4,2,1,4,2,1,......只要n == 1,我们就会说序列已经结束。
编写一个程序来确定给定n的序列中的最大值。

Input:

The first line of input contains a single integer P, (1<= P <= 100000), which is the number of data set s that follow. Each data set should be processed identically and independently.
Each data set consists of a single line of input consisting of two space separated decimal integers. The first integer is the data set number. The second integer is n, (1 <= n <= 100,000), which is the starting value.
译文:第一行输入包含一个整数P,(1 <= P <= 100000),它是后面的数据集的数量。每个数据集应该被相同和独立地处理。
每个数据集由一个由两个空格分隔的十进制整数组成的单行输入组成。第一个整数是数据集编号。第二个整数是n,(1 <= n <= 100,000),这是起始值。

Output:

For each data set there is a single line of output consisting of the data set number, a single space, and the largest value in the sequence starting at and including n. 
译文:对于每个数据集,都有一行输出,其中包含数据集编号,单个空间以及从n开始的序列中的最大值。

Sample Input:

4
1 1
2 3
3 9999
4 100000

Sample Output:

1 1
2 16
3 101248
4 100000
解题思路:题目很简单,就是找序列中的最大值,按规则来查找。我们知道序列中要么是奇数要么是偶数,因而在循环中判断一下是否为奇数,若是,执行规则(2)后也是变为偶数,所以容易想到循环体内最后直接执行n/=2;加上查找序列中最大值的判断语句,水过。说明:题目中输入的个数p最多就有10^5个,假设有p个n是接近10^5,那么求序列中的最大值可能就会超时,因为循环节长度是不知道的,有可能更多的循环次数,所以后台数据有点水,这题真正的解法应该不是这样的,让菜鸡想想,待想到再回来修改!
贴一下水数据的AC代码:
 #include<bits/stdc++.h>
using namespace std;
int main()
{
int p,m,n,maxn;
cin>>p;
while(p--){
cin>>m>>n;
maxn=n;
while(n!=){
if(n%)n=n*+;
if(maxn<n)maxn=n;
n/=;
}
cout<<m<<' '<<maxn<<endl;
}
return ;
}

杭电hdu4484与此题一样,题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4484

ACM_Hailstone HOTPO的更多相关文章

随机推荐

  1. 创建Django项目(二)——数据库配置

    2013-08-05 20:53:44|          1.数据库配置         举例是用MySQL数据库,首先在settings文件中做配置,如下: DATABASES = {     ' ...

  2. Visual studio 2008 的语法高亮插件 WordLight

    前段时间一直在使用matlab,今天需要使用vs2008,而用惯了matlab,习惯了其中一项选中变量高亮的设置,突然回来使用VS,感到各种不适应,顿时想到了一个词:矫情 呵呵,于是在网上找各种插件, ...

  3. 文件权限的获取,cmd命令:Takeown

    takeown /f * /a /r /d y #强制将当前目录下的所有文件及文件夹.子文件夹下的所有者更改为管理员组(administrators)命令: cacls d:documents*.* ...

  4. iOS音频播放 (二):AudioSession 转

    原文出处 :http://msching.github.io/blog/2014/07/08/audio-in-ios-2/ 前言 本篇为<iOS音频播放>系列的第二篇. 在实施前一篇中所 ...

  5. JS 获取form表单的所有数据

    在HTML中用js获取通过GET.POST方法(就是在网址后加?a=b&c=d之类)传过来的表单值. 针对大家常用的获取表单方式,很多时候都是在重复的写一些代码,今天给大家贴出来的代码可以作为 ...

  6. 为何被主流抛弃-江西IDC机房价格为何居高不下缺少竞争力-2014年5月江西IDC排行榜

     经常有人问江西IDC排行榜,为什么江西市场缺乏活力. 榜单调研者们有时仅仅能表示无解和无奈. 在IDC领域,其实已经形成了一二三线的城市之分. 一线城市是以上海.北京.深圳为代表的拥有最早国际宽 ...

  7. android的toogleButton和switch的使用方法

    这两个是button开关.监听CheckedChangeListener toggle_layout.xml: <? xml version="1.0" encoding=& ...

  8. CodeIgniter RestServer中put请求获取不到參数的问题解决

    近期用restserver遇到个蛋疼的问题,发现$this->put得到的參数都是null.查了一下发现.这貌似这个普遍问题,參见链接:https://github.com/chriskacer ...

  9. ACdream区域赛指导赛之手速赛系列(5) 题解

    A - Problem A Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others) Submi ...

  10. 数据结构 - 希尔排序(Shell&#39;s Sort) 具体解释 及 代码(C++)

    数据结构 - 希尔排序(Shell's Sort) 具体解释 及 代码(C++) 本文地址: http://blog.csdn.net/caroline_wendy/article/details/2 ...