반응형 프로그래머스60 [파이썬🐍] 프로그래머스 : 단어 변환 def solution(begin,target,words): answer = 0 if target not in words: #찾고자 하는 단어가 words에 없을 경우 return 0 stack = [] stack.append(begin) visited = [] while stack: word = stack.pop() if word == target: return answer else: for i in range(len(words)): if len([j for j in range(len(words[i])) if words[i][j]!=word[j]]) == 1: #한글자만 다르다면 if words[i] not in visited: visited.append(words[i]) stack.append(wor.. 2021. 7. 20. [파이썬🐍] 프로그래머스 : 입국심사 이분탐색으로 풀었다. 이분탐색 문제는 거의 접해보지 못해서 처음에 어떻게 풀어야 하는지 모르고 어려웠다. left와 right를 어떤 수로 해야하는 지가 가장 중요한 것 같다. def solution(n, times): answer = 0 left = 1 right = max(times) * n while left = n : right = mid #심사 받는 사람이 n보다 많거나 같으면 범위 작은 수쪽으로 줄이기 else : left = mid + 1#심사 받는 사람이 n보다 적으면 범위 큰 수쪽으로 줄이기 answer.. 2021. 6. 25. [파이썬🐍] 프로그래머스 : 조이스틱 def solution(name): short_map=[min(ord(i)-ord("A"), ord("Z")-ord(i)+1) for i in name] idx, answer = 0, 0 while True: answer += short_map[idx] short_map[idx] = 0 if sum(short_map) == 0: return answer left, right = 1, 1 while short_map[idx-left] == 0: left += 1 while short_map[idx+right] == 0: right += 1 answer += left if left < right else right idx += -left if left < right else right 2021. 5. 28. [파이썬🐍] 프로그래머스 : 로또의 최고 순위와 최저 순위 def solution(lottos, win_nums): answer = 0 cnt,cnt2 = 0, 0 for i in lottos: #최고 순위 구하기 if i in win_nums: cnt+=1 elif i == 0: cnt += 1 #0을 전부 당첨번호로 계산 for i in lottos: #최저 순위 구하기 if i in win_nums: cnt2 += 1 if cnt 2021. 5. 20. 이전 1 2 3 4 5 6 ··· 15 다음 반응형