๐ŸŒžAlgorithm/๐Ÿ”ฅBaekjoon

[Baekjoon] 9047_6174

๋ฟŒ์•ผ._. 2024. 11. 29. 19:56
๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/9047)

< 6174 >

 

๋ฌธ์ œ ํ’€์ด 

 

์ •๋ ฌ์„ ์‚ฌ์šฉํ•ด ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ํฐ ์ˆ˜์™€ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ๊ตฌํ•ด 6174๋ฅผ ๋งŒ๋“ ๋‹ค. 

 

 my solution (Java)

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Arrays;

public class _9047_ { // 6174

	public static void main(String[] args) throws IOException {
		BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

		int T = Integer.parseInt(bf.readLine());

		int result = 0;
		String min = "", max = "";
		for (int i = 0; i < T; i++) {
			String str = bf.readLine();

			while (!str.equals("6174")) {
				char[] arr = str.toCharArray();
				Arrays.sort(arr);

				min = String.valueOf(arr);
				max = "";
				for (int j = min.length() - 1; j >= 0; j--) {
					max += min.charAt(j);
				}
				result += 1;
				str = Integer.toString(Integer.parseInt(max) - Integer.parseInt(min));

				while (str.length() < 4) {
					str = "0" + str;
				}
			}
			bw.write(result + "\n");
			result = 0;
		}
		bw.flush();
	}
}
๋ณ€์ˆ˜)
T : ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ๊ฐœ์ˆ˜
result : ์—ฐ์‚ฐ ์ˆ˜
min, max : ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜์™€ ํฐ ์ˆ˜

 

ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์ˆ˜๋งŒํผ ๋‹ค์Œ ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•œ๋‹ค.

1) ๋„ค ์ž๋ฆฌ ์ˆ˜ ์ž…๋ ฅ

2) 6174๊ฐ€ ์•„๋‹ ๋•Œ๊นŒ์ง€ ๋‹ค์Œ ๊ณผ์ • ๋ฐ˜๋ณต

2-1) ์ •๋ ฌ์„ ์‚ฌ์šฉํ•ด ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜ ๊ตฌํ•˜๊ธฐ

2-2) ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ๋’ค์ง‘์–ด ๊ฐ€์žฅ ํฐ ์ˆ˜ ๊ตฌํ•˜๊ธฐ

2-3) ๊ฐ€์žฅ ํฐ ์ˆ˜ - ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜

2-4) ๊ฐ’์ด ๋„ค ์ž๋ฆฌ ์ˆ˜๋ณด๋‹ค ์ž‘๋‹ค๋ฉด ๋„ค ์ž๋ฆฌ๊ฐ€ ๋  ๋•Œ๊นŒ์ง€ ์•ž์— 0 ์ถ”๊ฐ€

3) result ์ถœ๋ ฅ



 

'๐ŸŒžAlgorithm > ๐Ÿ”ฅBaekjoon' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Baekjoon] 21194_Meditation  (0) 2024.12.03
[Baekjoon] 6147_Bookshelf  (0) 2024.12.02
[Baekjoon] 5462_POI  (0) 2024.11.26
[Baekjoon] 6191_Cows on Skates  (0) 2024.11.25
[Baekjoon] 6832_Maze  (0) 2024.11.22