문제
https://www.acmicpc.net/problem/1759
풀이
백트래킹을 이용하거나 combination 함수를 사용하는 두 가지 방법으로 풀 수 있다. 문제 자체의 난이도는 그렇게 높지 않았지만, "최소 한 개의 모음과 최소 두 개의 자음으로 구성되어있다."라는 제약 조건에 대한 처리를 해주지 않으면 테스트케이스는 통과하더라도 틀릴 수 있는 문제였다.
나는 두 가지 방법으로 다 풀어봤는데, 속도적인 측면에선 combination 함수를 사용하는 편이 더 빨랐다. 백트래킹로 풀더라도 depth와 제약조건에 대한 처리만 해준다면 간단하게 해결할 수 있다.
코드
1. 백트래킹
2. combination 함수
'CS > 알고리즘 문제 풀이' 카테고리의 다른 글
[백준] 5567 - 결혼 [Python(파이썬)] (0) | 2021.06.23 |
---|---|
[백준] 1325 - 효율적인 해킹 [Python(파이썬)] (4) | 2021.06.22 |
[백준] 1697 - 숨바꼭질 [Python(파이썬)] (0) | 2021.05.29 |
[백준] 7576 - 토마토 [Python(파이썬)] (0) | 2021.05.29 |
[백준] 2178 - 미로탐색 [Python(파이썬)] (0) | 2021.05.23 |