1288 새로운 불면증 치료법

Sungmin·2023년 10월 24일
0

SWEA 알고리즘

목록 보기
3/26

새로운 불면증 치료법URL

내 풀이

import java.io.*;
import java.util.*;
 
public class Solution {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int T = Integer.parseInt(br.readLine());
 
        for (int i = 1; i <= T; i++) {
            Set<Integer> set = new HashSet<>();
            int n = Integer.parseInt(br.readLine());
            int cnt = 0;
            String s;
            while (true) {
                cnt++;
                int answer = 0;
                answer = n * cnt;
 
                s = Integer.toString(answer);
                for (int j = 0; j < s.length(); j++) {
                    char c = s.charAt(j);
                    int x = c -'0';
                    set.add(x);
                }
                if (set.size() == 10) {
                    break;
                }
            }
            System.out.println("#" + i + " " + s);
        }
    }
}

배운점

생각보다 시간이 오래걸렸지만 성공했다.
처음엔 Boolean배열을 만들어서 방문처리 하는 방식으로 풀려다가 막혀서
생각해낸 방식이 Set함수를 사용해서 중복되지 않게 '0'부터 '9'까지 더해가는 식으로 풀이하였다.

17,992kb
메모리

114ms
실행시간

다른사람 풀이에 비해 비교적 메모리사용과 실행시간을 효율적으로 사용한 것 같다.

profile
Let's Coding

0개의 댓글