U E D R , A S I H C RSS

3 N+1 Problem/조동영

~cpp 
#include <iostream>

using namespace std;


int CheckCount (int low, int high){
	int temp;
	int count = 1;
	int maxCount = 0;
	temp = low;
	while(temp<high){
		count = 1;
		while(temp !=1){
			if(temp % 2 == 1)
				temp = 3 * temp + 1;
			else
				temp = temp / 2;
			count++;
		}
		temp = ++low;
		if(count > maxCount)
			maxCount = count;
	}
	return maxCount;
}

void main(){
	cout << "2개의 값을 입력하시오 단 첫번째것이 더 작은 숫자이어야함" << endl;
	int num1, num2;
	cin >> num1 >> num2;
	
	cout << "MAX cycle-length값은 " << CheckCount(num1,num2) << "입니다." << endl;
}

쓰레드

승한이가 해보래서 함 해보았어요
ㅠㅠ 안배꼈는데... 하고나서보니 희경이형꺼랑 똑같네요... 음.. 1과 1000000입력하면 답이 안나오고요...
흔히 생각하는 알고리즘은 다들 비슷해서 소스가 비슷한 경우가 많어. 그걸 더욱 더 향상 시키려는 노력이 필요하지. 요즘 다른 알고리즘을 생각하려고 노력 중인데 잘 안떠오르네 ㅋ --강희경


Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-05-27 07:09:19
Processing time 0.1007 sec