umilove98의 블로그

백준 1769 Java 자바 본문

algorithm/백준

백준 1769 Java 자바

umilove98 2021. 8. 20. 07:26
반응형

 

x를 입력받으면 x가 한자리수인지 확인한다. 

한자리수가 아니라면 한자리수가 될 때까지 변환과정을 반복한다.

변환과정은 각 자리의 수를 모두 더하여 그것을 x에 대입하는것이다.

x가 한자리수가 되면 변환 과정을 종료하고 변환한 횟수와 3의배수인지의 여부를 판단하여 출력한다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
 
public class Q1769 {
 
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String x = br.readLine();
        
        int cnt = 0;    // 변환 과정을 거친 횟수
        
        while(true) {
            long sum = 0;
            if(x.length() == 1) {    // x가 한자리일 경우 변환 과정 종료 
                break;
            }
            for(int i = 0; i < x.length(); i++) {    // 각 자리를 모두 더함 
                sum += Integer.parseInt(String.valueOf(x.charAt(i)));
            }
            cnt++;
            x = String.valueOf(sum);    // 변환 결과를 x에 넣어줌
        }
        
        if(Integer.parseInt(String.valueOf(x)) % 3 == 0) {    // 변환 결과가 3의 배수인지 판단
            System.out.println(cnt);
            System.out.println("YES");
        }else {
            System.out.println(cnt);
            System.out.println("NO");
        }
    }
}
 
cs
반응형

'algorithm > 백준' 카테고리의 다른 글

백준 1789 Java 자바  (0) 2021.08.20
백준 2480 Java 자바  (0) 2021.08.20
백준 2420 Java 자바  (0) 2021.08.19
백준 1730 Java 자바  (0) 2021.08.18
백준 2061 Java 자바  (0) 2021.08.18