반응형
코드
def back(cnt,ind):
if cnt == l:
vo,co = 0,0
for i in word:
if i in vowel:
vo+=1
else:
co+=1
if vo >= 1 and co >= 2:
print("".join(word))
return
for i in range(ind,c):
if visit[i] == 0:
word.append(alpha[i])
visit[i] = 1
back(cnt+1,i+1)
visit[i] = 0
word.pop()
l,c = map(int,input().split())
alpha = list(input().split())
alpha.sort()
vowel = ['a','e','i','o','u']
visit = [0 for _ in range(c)]
word = []
back(0,0)
반응형
'알고리즘 > 백트래킹' 카테고리의 다른 글
[백준][JAVA] 9742번 순열 (0) | 2023.03.15 |
---|---|
[백준][Python] 18429번 근손실 (0) | 2022.08.08 |
[백준][Python] 10974번 모든 순열 (0) | 2022.08.04 |
[백준][Python] 1182번 부분수열의 합 (0) | 2022.08.03 |
[백준][Python] 15652번 N과 M (4) (0) | 2022.08.01 |
댓글