본문 바로가기
Beakjoon&프로그래머스/Java

[백준/Java] 4575번 Refrigerator Magnets

by 현장 2025. 12. 15.

-Code

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class BOJ4575 {
    static Map<Character, Boolean> alpaCnt = new HashMap<>();

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        for (int i = 0; i < 26; i++) {
            char alpa = (char) ('A' + i);
            alpaCnt.put(alpa, true);
        }

        while (true) {
            String line = sc.nextLine();
            // 탈출 조건
            if (line.equals("END")) break;
            // 매 사이클 마다 초기화
            Map<Character, Boolean> cntTemp = new HashMap<>(alpaCnt);
            boolean flag = true;

            for (char c : line.toCharArray()) {
                // 빈칸인 경우 다음으로 넘어감
                if (c == ' '){
                    continue;
                }
                // 해당 알파벳이 사용된 경우 탈출 
                if (!cntTemp.get(c)) {
                    flag = false;
                    break;
                }
                cntTemp.put(c, false);
            }
            // 알파벳 사용수가 맞는 경우만 출력
            if (flag) {
                System.out.println(line);
            }
        }
    }
}