UVa 694 - The Collatz Sequence
题目:给出了如下算法;
step 1:选择任意一个正整数A为序列的第一个数;
step 2:如A=1或者A>L,则停止
step 3:如A为偶数,则A=A/2,执行step 2;
step 4:如A为奇数,则A=3A+1,执行step 2;
现在给定初始值A,和限定最大数值L;求从A开始,到A=1||A>L,经过数值个数。
思路: 当A为偶数时,A值减小,如A减小到等于1,则停止。如A为奇数,则A增大,当A>L则停止。
#include<iostream>
#include<cstdio>
using namespace std; int main()
{
//freopen("input.txt","r",stdin);
int a1,b1,count,k=;
long long a,b,c;
while(cin>>a1>>b1)
{
k++;
if(a1<=&&b1<=)
break;
count=;
a=a1;b=b1;
while(a%==)
{
a=a>>;
count++;
}
while()
{
if(a==)
break;
if(a%)
{
c=*a+;
if(c<=b)
{
a=c;count++;
while(a%==)
{ a=a>>;
count++;
}
}
else
break;
}
}
cout<<"Case "<<k<<": A = "<<a1<<", limit = "<<b1<<", number of terms = "<<count<<endl;
}
return ;
}
UVa 694 - The Collatz Sequence的更多相关文章
- UVaOJ 694 - The Collatz Sequence
题目很简单,但是一开始却得到了Time Limit的结果,让人感到很诧异.仔细阅读发现,题目中有一个说明: Neither of these, A or L, is larger than 2,147 ...
- UVA 1546 - Complete the sequence!(差分法)
UVA 1546 - Complete the sequence! 题目链接 题意:给定多项式前s项,求出后c项,要求尽量小 思路:利用差分法,对原序列求s - 1次差分,就能够发现规律,然后对于每多 ...
- UVA 10534 三 Wavio Sequence
Wavio Sequence Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit Sta ...
- (Problem 14)Longest Collatz sequence
The following iterative sequence is defined for the set of positive integers: n n/2 (n is even) n 3n ...
- projecteuler---->problem=14----Longest Collatz sequence
title: The following iterative sequence is defined for the set of positive integers: n n/2 (n is eve ...
- UVA - 348Optimal Array Multiplication Sequence(递推)
id=19208">题目:Optimal Array Multiplication Sequence 题目大意:给出N个矩阵相乘.求这些矩阵相乘乘法次数最少的顺序. 解题思路:矩阵相乘 ...
- UVA_694:The Collatz Sequence
Language: C++ 4.8.2 #include<stdio.h> int main(void) { long long int m, n, copy_m; ; ; ) { sca ...
- UVa 1626 (输出方案) Brackets sequence
正规括号序列定义为: 空序列是正规括号序列 如果S是正规括号序列,那么[S]和(S)也是正规括号序列 如果A和B都是正规括号序列,则AB也是正规括号序列 输入一个括号序列,添加尽量少的括号使之成为正规 ...
- UVA 10479 The Hendrie Sequence
https://vjudge.net/problem/UVA-10479 打表找规律: 1.根据n可以确定第n项在上表中第i行 2.减去前i-1行,就得到了n在第i行的第j个 3.第i行的规律:1个i ...
随机推荐
- 用PHP+MySQL来做分页的演示
用php做分页弄懂逻辑关系其实不难,不过我在听课的时候估计是被老师讲的那些变量里的英文单词给听懵了,因为有几个变量的名字都很像,只是换了两三个英文字母而已,有的就少几个这样的,听到一半已经不知道老师讲 ...
- MySQL查询语句完整语法解析
- SQL起别名
select列的时候取别名有三种方法,这三种方法并不是所有数据库都适用. 方法一.直接在字段名称后面加上别名,中间以空格隔开. 方法二.以as关键字指定字段别名,as在select的字段和别名之间. ...
- Python导入自定义包或模块
一般我们会将自己写的 Python 模块与 Python 自带的模块分开存放以达到便于维护的目的. Python 运行环境在查找模块时是对 sys.path 列表进行遍历,如果我们想在运行环境中添加自 ...
- Python基础篇【第7篇】: 面向对象(2)
上一篇<初识面向对象>文章介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以讲多函数中公 ...
- C++ 实现Range类,用于常规遍历
PYTHON的Range类非常好用,所以用C++来简单实现下: // 实现Range类,用于遍历 // #include <string> class Range { public: / ...
- 查看APK方法数的工具dex-method-counts
做APK方法总能遇到方法数超限的问题(主要是方法数, 字段数, String数.等各种数都可能超过65k导致不能安装) 除了大公司都自己做了一些检查方法. 网上还有一些开源的查询工具. 给大家推荐一个 ...
- maven多项目配置实践
工具:IntelliJ IDEA 1.新建maven项目top 略 提示:不使用任何模版 2.在上面的maven项目的目录下(虽然这不一定是必须的),新建另一个maven项目secend. 同上 3. ...
- winform窗体之间通过 windows API SendMessage函数传值
-----------------------------------------------------------‘接收窗体’代码.cs------------------------------ ...
- 关于android.view.WindowManager$BadTokenException问题出现以及解决的一些记录
1.出现 在app showdialog()时偶尔会出现,根据stackoverflow.com的描述,貌似是show的时候用作context的activity以及destroy了,,,一些异步操作会 ...