본문 바로가기

자바/문제풀이

[JAVA | 백준 1110] 더하기 싸이클

0~99사이의 숫자, N이 입력된다.

 

각 자릿수의 자연수를 더한다. 더해서 나온 값은 일의 자릿수가 된다.

원래 일의 자릿수에 있던 값은 10의 자릿수가 된다.

 

여기까지가 하나의 싸이클이다.

N이 다시 N으로 돌아가기 위한 싸이클의 횟수를 구해야 한다.

 

 

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int cycle=0;
        int newN = N;

        while(true){
            cycle++;
            N = ((N % 10) * 10) + (((N / 10) + (N % 10)) % 10);
            if (N==newN){
                break;
            }

        }
        System.out.println(cycle);


    }
}

 

KeyPoint

의미없는 값까지 변수로 만들지 않기