반응형
문제
풀이
package step4;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException{
//더하기 사이클
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int cnt = 0;//사이클 횟수
int nCopy = n;
int n1, n10;//일의 자리수, 십의 자리수
do {
n1 = n % 10;
n10 = n / 10;
n = n1 * 10 + ((n1 + n10) % 10);
cnt++;
}while(nCopy != n);
System.out.println(cnt);
br.close();
}
}
알고리즘
n이 주어질 때, n의 1의 자리 수와 10의 자리 수를 더하고
n의 1의 자리 수와 더한 값의 1의 자리 수를 합쳐 새로운 숫자를 만든다.
팁
최소 1번은 반복문을 돌아야하므로, do-while문을 활용한다.
출처
반응형
'알고리즘 > Java' 카테고리의 다른 글
[백준/단계별로 풀어보기] 5. 1차원 배열 - 2562.최댓값 (Java8) (0) | 2021.09.01 |
---|---|
[백준/단계별로 풀어보기] 5. 1차원 배열 - 10818.최소, 최대 (Java8) (0) | 2021.09.01 |
[백준/단계별로 풀어보기] 4. while문 - 10951.A+B - 4 (Java8) (0) | 2021.08.26 |
[백준/단계별로 풀어보기] 4. while문 - 10952.A+B - 5 (Java8) (0) | 2021.08.26 |
[백준/단계별로 풀어보기] 3. for문 - 10871.X보다 작은 수 (Java8) (0) | 2021.08.25 |