728x90
programmers.co.kr/learn/courses/30/lessons/64064
정답코드
블로그 참조
# ※velog.io/@daon9apples/
from itertools import permutations
def isMatch(user_set, banned_set):
for i in range(len(user_set)):
if len(user_set[i])!=len(banned_set[i]):
return False
for j in range(len(user_set[i])):
if banned_set[i][j]=='*':
continue
if user_set[i][j]!=banned_set[i][j]:
return False
return True
def solution(user_id, banned_id):
ans=[]
for com_set in permutations(user_id, len(banned_id)):
if isMatch(com_set, banned_id):
com_set = set(com_set)
if com_set not in ans:
ans.append(com_set)
return len(ans)
풀다가 답은 맞췄는데 코드가 너무 더러워서 다른분 코드를 찾아보다가 발견하게 되었습니다.
너무 깔끔하게 잘 정리하신것 같아 공유합니다.
※이분도 다른분꺼 공유 주신것 같습니다.
※velog.io/@daon9apples/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-Level3-%EC%95%BC%EA%B7%BC-%EC%A7%80%EC%88%98-Python
728x90
'IT 이야기 > 알고리즘 공부' 카테고리의 다른 글
[Programmers][Python][동적계획법, DP] 정수 삼각형- level3 (0) | 2021.03.22 |
---|---|
[Programmers][Python][동적계획법, DP] 정수 삼각형- level3 (0) | 2021.03.01 |
[Programmers][Python][해시] 베스트앨범 - level3 (0) | 2021.02.05 |
[Programmers][Python][연습문제] 야근지수 - level3 (0) | 2021.02.03 |
Backjoon 1094번 막대기 (0) | 2020.12.01 |
댓글