=-=나름..이책끌린다..ㅋㅋ
요즘 따라 알고리즘 만하고 싶은 나에겐 딱인 나에게 맞춘책..~~
오늘첫문제푸는데22분이걸렸따..-0-ㅎㅎ(잘햇따고쓰다듬어줘~)
어떤정수 n에서 시작해 n이 짝수이면 2로나누고, 홀수면 3을 곱한 다음 1을더한다.
이렇게 n이 1이 될때까지 의 입력값은 두값을 받아 첫번째수 n에서 m 까지의
최대사이클 길이를 구하라.
ex) 1 10
100 200
답) 1 10 20
100 200 125
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class The3nPluse1Problem {
static int value = 0;
public The3nPluse1Problem(){
BufferedReader br = new BufferedReader( new InputStreamReader( System.in ) );
int firstValue=0;
int secondValue=0;
int thirdValue = 0;
System.out.println("첫번째숫자를입력하세요~");
try {
firstValue = Integer.parseInt( br.readLine() );
System.out.println("두번째숫자를입력하세요~");
secondValue = Integer.parseInt( br.readLine() );
} catch (NumberFormatException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
thirdValue = firstValue;
while(thirdValue != secondValue+1){
int a = thirdValue;
int b = 0;
while(a != 1){
if((a%2) == 0){
a = a/2;
}else{
a = (a*3)+1;
}
b++;
}
if(value<b)
value = b+1;
thirdValue++;
}
System.out.println(firstValue + " " + secondValue + " " + value);
}
public static void main(String[] args) {
The3nPluse1Problem tp = new The3nPluse1Problem();
}
}
-0-후~나름...while문을 이래저래쓰는것을 이제서야 쬐끔할수 있는거같다..ㅎㅎ
어서..나의실력을!!
'app > java' 카테고리의 다른 글
[JAVA] Vector, Set, ArrayList, Map등등의 차이점 (0) | 2008.04.12 |
---|---|
지뢰찾기 알고리즘 (0) | 2008.04.10 |
이클립스 풍선말 한글로 나오게하기~ (0) | 2008.04.05 |
JXL 폰트, 셀병합, 셀크기, 셀색깔, 테두리 (1) | 2008.03.24 |
JXL 설치하기 (4) | 2008.03.12 |