문제 링크
https://www.acmicpc.net/problem/1110
나의 코드 (java)
import java.util.Scanner;
public class Main {
public static void main (String[] args) {
Scanner sc = new Scanner(System.in);
// 입력받기
int n = sc.nextInt();
// 사이클 마다 변하는 값을 받을 변수
int tmp = n;
// 사이클 수
int count = 0;
while (true){
// a : 십의 자리 수
int a;
if (tmp < 10){
a = 0;
} else {
a = tmp / 10;
}
// b : 일의 자리수
int b = tmp % 10;
// c : a + b의 값
int c = a + b;
// tmp에 새로운 수를 만든다.
tmp = (b * 10) + (c % 10);
// 연산이 끝났으니 사이클 수를 1회 올림
count += 1;
// 입력받은 값과 새로운 수를 비교 : 같으면 종료, 다르면 사이클 반복
if (n == tmp){
break;
}
}
// 사이클 수 출력
System.out.println(count);
}
}
'코딩공부 > 백준 (java)' 카테고리의 다른 글
[백준 2562] 최댓값 (java) (0) | 2021.07.05 |
---|---|
[백준 10818] 최소, 최대 (java) (0) | 2021.07.05 |
[백준 10951] A+B - 4 (java) (0) | 2021.07.02 |
[백준 10952] A+B - 5 (java) (0) | 2021.07.02 |
[백준 10871] X보다 작은 수 (java) (0) | 2021.07.02 |
댓글