Link : programmers.co.kr/learn/courses/30/lessons/43163
Python
더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
def check(str1, str2):
if len(str1) != len(str2):
return False
counter = 0
for i in range(len(str1)):
if str1[i] != str2[i]:
counter += 1
return True if counter == 1 else False
def solution(begin, target, words):
queue = []
queue.append((begin, 0))
while len(queue):
data = queue.pop(0)
if data[0] == target:
return data[1]
for idx, val in enumerate(words):
if check(data[0], val):
queue.append((val, data[1] + 1))
words.pop(idx)
return 0
|
cs |
FeedBack
cjw.git@gmail.com
'알고리즘 > 소스코드' 카테고리의 다른 글
PROGRAMMERS 17677: [1차] 뉴스 클러스터링 (0) | 2021.01.13 |
---|---|
PROGRAMMERS 12973: 짝지어 제거하기 (0) | 2021.01.11 |
PROGRAMMERS 42746: 가장 큰 수 (0) | 2021.01.11 |
PROGRAMMERS 60057: 문자열 압축 (0) | 2021.01.11 |
PROGRAMMERS 12899: 124 나라의 숫자 (0) | 2021.01.11 |
댓글