반응형

 

문제: https://school.programmers.co.kr/learn/courses/30/lessons/120869

 


 

문제

 

 

 

 

 


 

 

코드

def solution(spell, dic):
    # 성공과 실패시 반환해야 하는 값을 변수로 저장 
    # spell에 담긴 알파벳을 한번씩만 모두 사용한 단어가 dic에 존재한다면 1
    success = 1
    # 존재하지 않는다면 2
    fail = 2

    # answer 변수의 초기화 값: fail
    answer = fail

    for word in dic:
        # spell의 개수와 word의 길이가 같은 경우만 1번씩 사용한 가능성이 있다
        if len(spell) == len(word):
            # spell 에 담긴 알파벳을 하나씩 비교한다
            for i in range(len(spell)):
                one_spell = spell[i]
                # 만약 알파벳이 포함되어 있지 않다면 break하여 dic의 다음 단어를 체크한다.
                if word.find(one_spell) == -1:
                    answer = fail
                    break
                # 끝까지 돌았을 경우 success!! 
                if i+1 == len(spell):
                    answer = success
                    return answer
        else:
            pass

    return answer

 

 

 

 


 

 

 

 

 

반응형
복사했습니다!