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 answer728x90
'🟢 알고리즘 문제 풀이 > Programmers' 카테고리의 다른 글
| [파이썬] 백준 10159 저울 (0) | 2023.05.08 |
|---|---|
| [파이썬] 프로그래머스 연속된 부분 수열의 합 (0) | 2023.04.26 |
| [파이썬] 프로그래머스 덧칠하기 (0) | 2023.03.07 |
| [파이썬] 프로그래머스 타겟 넘버 (0) | 2023.03.07 |
| [파이썬] 프로그래머스 N으로 표현 (0) | 2023.03.03 |