Algorithm/BOJ

[백준 알고리즘/BOJ/C++] 1110 더하기 사이클

pinevienna 2021. 1. 11. 12:39

 

 

26 > 2 + 6 = 8 > 68        사이클의 길이 += 1

68 > 6 + 8 = 14 > 84      사이클의 길이 += 1

84 > 8 + 4 = 12 > 42      사이클의 길이 += 1

42 > 4 + 2 = 6 > 26        사이클의 길이 += 1

                                          ∴ 26의 사이클의 길이 = 4

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
 
int main(void) {
    int n, val, temp;
    int cnt = 0;
 
    cin >> n;
    temp = n;
 
    while (true) {
        cnt++;
 
        val = temp / 10 + temp % 10;
        temp = (temp % 10* 10 + (val % 10);
 
        if (n == temp)
            break;
    }
 
    cout << cnt;
}
cs