uva694 The Collatz Sequence
2017-03-19 16:17
525 查看
题目:已知公式,求数列,给定了最大数的范围
注意: 超越类型的最大范围会出现超时
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<sstream>
#include<cstdio>
#include<iostream>
#include<math.h>
#include <map>
#include <vector>
#include <algorithm>
using namespace
std;
int func(long n,int l){
int i =
1;
while(1) {
if(n ==
1 || n > l) break;
if(n %
2 == 1) {
n = 3 * n +
1;
if(n > l)
break;
i++;
}
if(n %
2 == 0) {
n /= 2;
if(n > l)
break;
i++;
}
}
return i;
}
int main(){
int b;
long a;
int m =
1;
while(scanf("%ld %d",&a,&b)) {//1️⃣如果用int类型的a会发生超时
if((a == -1) && (a == b))
break;
int temp =
func(a, b);
printf("Case %d: A = %ld, limit = %d, number of terms = %d\n",m++,a,b,temp);
}
return
0;
}
注意: 超越类型的最大范围会出现超时
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<sstream>
#include<cstdio>
#include<iostream>
#include<math.h>
#include <map>
#include <vector>
#include <algorithm>
using namespace
std;
int func(long n,int l){
int i =
1;
while(1) {
if(n ==
1 || n > l) break;
if(n %
2 == 1) {
n = 3 * n +
1;
if(n > l)
break;
i++;
}
if(n %
2 == 0) {
n /= 2;
if(n > l)
break;
i++;
}
}
return i;
}
int main(){
int b;
long a;
int m =
1;
while(scanf("%ld %d",&a,&b)) {//1️⃣如果用int类型的a会发生超时
if((a == -1) && (a == b))
break;
int temp =
func(a, b);
printf("Case %d: A = %ld, limit = %d, number of terms = %d\n",m++,a,b,temp);
}
return
0;
}
相关文章推荐
- 694 - The Collatz Sequence---关于goto语句的一些反思(还有uva的Runtime Error问题的解决)
- UVa_694 - The Collatz Sequence
- UVa 694 - The Collatz Sequence
- uva694 The Collatz Sequence
- uva694 The Collatz Sequence
- UVA 694 - The Collatz Sequence
- UVa 694 The Collatz Sequence (数论)
- UVa694 - The Collatz Sequence(模拟)
- UVa 694 - The Collatz Sequence
- uva-694 - The Collatz Sequence
- UVA 694 - The Collatz Sequence
- UVa 694 - The Collatz Sequence
- UVA694 - The Collatz Sequence
- UVA 694 - The Collatz Sequence
- UVa 694 The Collatz Sequence
- UVA 694-The Collatz Sequence
- UVa694 The Collatz Sequence
- UVA 694-The Collatz Sequence
- UVA 694 The Collatz Sequence
- UVA - 694 - The Collatz Sequence