백준 알고리즘(C/C++) - 1110번 더하기 사이클
- 알고리즘
- 2021. 6. 3.
#include <stdio.h>
int main(void) {
int a, n, i = 0;
scanf("%d", &n);
a = n;
do {
a = ((a / 10) + (a % 10))%10 + (a % 10) * 10;
i++;
} while (a != n);
printf("%d\n", i);
return 0;
}
#include <iostream>
int main() {
int a, n, i = 0;
std::cin >> n;
a = n;
do {
a = ((a / 10) + (a % 10)) % 10 + (a % 10) * 10;
i++;
} while (a != n);
std::cout << i;
return 0;
}
일단 문제를 보면 끝내는 조건이 10의 자리 숫자, 1의 자리 숫자를 더해서 그 값을 추출하고
1의 자리 숫자 *10 + 추출값을 계산해서 원래의 숫자랑 같으면 끝내는 조건 값이다.
이 조건만 맞추면 된다.