[Baeakjoon] while문 1110번: 더하기 사이클
2019. 7. 14. 18:19
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
public class Main {
public static void main (String args[]) {
Scanner scan = new Scanner(System.in);
int S[] = new int[2]; //고정
int A[] = {0, 0};
int B[] = {0, 0};
int swich = 1; //(S[0]==B[0])&&(S[1]==B[1])
int cycle = 1;
int first = scan.nextInt();
S[0] = first/10; //처음 숫자의 십의자리
S[1] = first - (10 * S[0]); //처음 숫자의 일의 자리
A[0] = first/10; //십의자리
A[1] = first - (10 * A[0]); // 일의 자리
while(swich == 1) { //숫자가 같을 때까지 반복
int number = A[0] + A[1];
if(number<10) {
B[0] = A[1];
B[1] = number;
} else {
B[0] = A[1];
B[1] = number - (10 * (number/10));
}
if((S[0]==B[0])&&(S[1]==B[1])) {
swich = 0;
break;
} else {
A[0] = B[0];
A[1] = B[1];
++cycle;
}
}
System.out.println(cycle);
}
}
|
더하기 사이클에 대해 문제를 해결해보았다.
같은 숫자가 되었을 때를 판단하기 위해, 새로운 숫자를 조합하기 위해 자릿수별로 분리하여 10의 자리 숫자는 첫번째 인덱스인 인덱스 0에, 1의 자리 숫자는 두번째 인덱스인 인덱스 1에 넣음으로써 연산을 했다.
'Undergraduate Records' 카테고리의 다른 글
[Beakjoon] 1차원 배열문제 2577번: 숫자의 개수 (0) | 2019.07.14 |
---|---|
[Baekjoon] 입출력 마지막 문제 2588: 곱셈 (0) | 2019.07.14 |
[Buttom UP] 버튼 만들기, Splash 이미지, 화면 전환 구성 (0) | 2019.07.11 |
2회차 결과 보고서 (0) | 2019.07.10 |
[Buttom UP] Image View를 이용한 이미지 처리 (0) | 2019.07.10 |