๊ทธ๋ƒฅ ํ’€ ์ˆ˜๋„ ์žˆ์ง€๋งŒ ๋น„ํŠธ๋งˆ์Šคํ‚น์„ ํ™œ์šฉํ•˜์—ฌ ํ’€ ์ˆ˜๋„ ์žˆ๋Š” ๋ฌธ์ œ

 

package algo;

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

/*
 * 1. ์–‘์„ธ๊ธฐ : ์ฒซ ๋ฒˆ์งธ N๋ฒˆ ์–‘, ๋‘ ๋ฒˆ์งธ 2N๋ฒˆ ์–‘ ... k๋ฒˆ์งธ kN๋ฒˆ์–‘
 * 2. ํ˜„์žฌ ๋ณธ ์ˆซ์ž : ex) 1295์–‘ -> 1, 2, 9, 5
 * 3. 0~9 ๋ชจ๋“  ์ˆซ์ž๋ฅผ ๋ณด๋ฉด ์–‘ ์„ธ๊ธฐ ๋ฉˆ์ถค  
 */
public class swea_์ƒˆ๋กœ์šด๋ถˆ๋ฉด์ฆ์น˜๋ฃŒ๋ฒ• {
	
	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br =new BufferedReader(new InputStreamReader(System.in));
		StringBuilder sb = new StringBuilder();
		
		int T = Integer.parseInt(br.readLine());
		
		for(int t = 1; t <= T; t++) {
			int N = Integer.parseInt(br.readLine()); //์ฒซ๋ฒˆ์งธ ์–‘ ๋ฒˆํ˜ธ
			
			int visited = 0; //ํ˜„์žฌ๊นŒ์ง€ ๋ณธ ์ˆซ์ž๋ฅผ ๋น„ํŠธ๋กœ ํ‘œํ˜„, 0000000000(2)
			int goal = (1 << 10) - 1; //๋ชจ๋“  ์ˆซ์ž๋ฅผ ๋ณด๊ฒŒ ๋˜์—ˆ์„ ๋•Œ์˜ ๊ฐ’, 10000000000 - 1 = 111111111(2)
			
			int x = 1;
			while(true) {
				int sheep = x * N; //x๋ฒˆ์งธ ์–‘ ๋ฒˆํ˜ธ
				
				char[] chs = String.valueOf(sheep).toCharArray();
				for(int i = 0; i < chs.length; i++) {
					int num = chs[i] - '0';
					visited = visited | (1 << num); //ํ•ด๋‹น ์ˆซ์ž๊ฐ€ ๋ณด๊ฒŒ ๋˜์–ด 1๋กœ ๋ณ€๊ฒฝ
				}
				
				if(visited == goal) break; //๋ชจ๋“  ์ˆซ์ž๊ฐ€ ๋“ฑ์žฅํ•˜๋ฉด ์ข…๋ฃŒ
				
				x++;
			}
			
			sb.append("#" + t + " " + x * N + "\n");
		}
		System.out.println(sb);
	}

}

 

 

 

 

 

๊ฒฐ๊ณผ

giraffe_