본문 바로가기
코딩/백준-자바

[자바] 백준 1110번: 더하기 사이클

by 철없는민물장어 2023. 1. 9.
728x90

https://www.acmicpc.net/problem/1110

 

1110번: 더하기 사이클

0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음,

www.acmicpc.net

 


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class P1110 {

	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int n=Integer.parseInt(br.readLine());
		if(n==0) {
			System.out.println(1);
			return;}
		int next_single_num=(n%10 + n/10)%10;
		int next_num=0;
		int current_num=n;
		int count=0;
		while(next_num!=n) {
			next_single_num=(current_num%10 + current_num/10)%10;
			next_num=(current_num%10)*10 + next_single_num;
			count++;
			current_num=next_num;
		}
				
		System.out.println(count);
				
		
	}

}

다음 순서 값을 구해보고,

다음 순서 값이 원래 값이 될 때까지 while문으로 반복하면서 count를 증가시킨다.

728x90

댓글