링크


문제 요약: L ,c 의 숫자가 주어지고 문자가 주어졌을때
L 의 개수의 맞게 조합하여 사전순으로 나열하기 (이때 모음의 갯수는 최소 1개 자음은 최소 2개가 있어야한다.)


해결 방안: 조합(combination) 사용 하여 조합한것들을 모두 가져와서 조건에 맞는 애들만 출력하기


1
2
3
4
5
6
7
8
9
10
11
12
13
from itertools import combinations
l,c=map(int, input().split())
alist=list(map(str, input().split()))
alist.sort()
ans=combinations(alist,l)
 
forin ans:
    m=0
    forin i:
        ifin "aeiou":
           m +=1
    if m>=1 and l-m>=2:
        print("".join(i))
cs


다른 방안

전체를 조합하지 않고 

입력받은 문자들을 모음온 모음끼리 자음은 자음끼리 의 배열 2개를 만들어서 이 두놈을 조합해도 될것같음

근데 아직 못해봄 ㅈㅅ