본문 바로가기
코딩테스트/파이썬

[백준] 암호 만들기 1759 (파이썬)

by 커피는아아 2021. 3. 8.
반응형
import itertools
import sys

l, c = map(int,sys.stdin.readline().rstrip().split())
secret = sorted(list(sys.stdin.readline().rstrip().split()))

data = ('a', 'e', 'i', 'o', 'u')

for x in list(itertools.combinations(secret, l)):
    count = 0
    for i in data:
        if i in x:
            count += 1
    if count >= 1 and l - count >= 2: # 자음이 2개 이상이란 것을 고려하지 않았었다.
        print(''.join(x))

# 출력 초과 왜 그러지? 조합 값이 l이 아닌 4를 넣었다.
  • itertools라는 파이썬 라이브러리를 활용하면 쉽게 풀 수 있는 문제 였다.
  • 조건을 잘 확인해서 분기처리하면 맞을 수 있겠다.