https://school.programmers.co.kr/learn/courses/30/lessons/64064
모범 답안
from itertools import product
def check(str1, str2):
if len(str1) != len(str2):
return False
for i in range(len(str1)):
if str1[i] == "*":
continue
if str1[i] != str2[i]:
return False
return True
def solution(user_id, banned_id):
answer = set()
result = [[] for i in range(len(banned_id))]
for i in range(len(banned_id)):
for u in user_id:
if check(banned_id[i], u):
result[i].append(u)
result = list(product(*result))
for r in result:
if len(set(r)) == len(banned_id):
answer.add("".join(sorted(set(r))))
return len(answer)
'코딩테스트 > programmers (python)' 카테고리의 다른 글
Programmers / 2단계 / 괄호 변환 / python / 2020 KAKAO BLIND RECRUITMENT (0) | 2024.05.08 |
---|---|
Programmers / 3단계 / 스티커 모으기(2) / python (0) | 2024.05.07 |
Programmers / 3단계 / 숫자 게임 / python (0) | 2024.05.02 |
Programmers / 3단계 / 기지국 설치 / python (0) | 2024.04.16 |
Programmers / 2단계 / 전력망을 둘로 나누기 / python (0) | 2024.04.10 |