외계어 사전

문제


나의 생각

초반에는 replace 함수를 사용하여 처리하는 방식으로 접근. 

하지만 문제에서 보니 한번만 사용이 되는 것이니 여러개의 단어를 한번에 변경하는것은 오답처리가 됨. 

다음으로 생각한 것은 indexOf함수를 이용하여 글자 자르기로 접근. 

찾아서 나오는 글자 기준으로 찾아서 나오는 indexOf로 글자 앞뒤로 자르고 다시 붙이는 방식으로 접근.

이미 한번이라도 글자가 없는 케이스가 있으면 "none"으로 표시.


나의 답안

public static int solution(String[] spell, String[] dic) {
    int answer = 2;

    for (int i = 0; i < dic.length; i++) {
        String a = "";
        for (int j = 0; j < spell.length; j++) {
            if (dic[i].contains(spell[j])){
                String substring1 = dic[i].substring(0, dic[i].indexOf(spell[j]));
                String substring2 = dic[i].substring(dic[i].indexOf(spell[j])+1, dic[i].length());
                dic[i] = substring1 + substring2;
            } else {
                dic[i] = "none";
            }

        }
    }
    for (String a : dic) {
        System.out.println("a = " + a);
        if (a.equals("")) answer = 1;
    }

    return answer;
}

'Programmers 문제풀이 > Lv.0' 카테고리의 다른 글

종이 자르기  (0) 2023.03.07
캐릭터의 좌표  (0) 2023.03.07
삼각형의 완성조건 (2)  (0) 2023.03.07
구슬을 나누는 경우의 수  (0) 2023.03.06
최빈값 구하기  (0) 2023.03.06