728x90

DFS, BFS 문제인데 그냥 완전 탐색으로 풀었고, 시간 초과는 안나왔다.

 

def check(n,m):
    n = list(n)
    m = list(m)
 
    count = 0
 
    for i in range(0,len(n)):
        if n[i]!=m[i]:
            count+=1
 
    if count==1:
        return True
    else:
        return False
 
 
def solution(begin, target, words):
    answer = 0
 
    if target not in words:
        return 0
 
    stack = [begin]
 
    for i in range(0,len(words)):
        answer+=1
 
        stack = list(set(stack))
        for j in range(0,len(stack)):
 
            for z in range(0,len(words)):
 
                if check(stack[j],words[z])== True:
                    stack.append(words[z])
 
 
                    if target in stack:
                        return answer
                    print(stack)
 
 
    return answer
728x90

+ Recent posts