-
https://www.acmicpc.net/problem/2961
2961번: 도영이가 만든 맛있는 음식
첫째 줄에 재료의 개수 N(1 ≤ N ≤ 10)이 주어진다. 다음 N개 줄에는 그 재료의 신맛과 쓴맛이 공백으로 구분되어 주어진다. 모든 재료를 사용해서 요리를 만들었을 때, 그 요리의 신맛과 쓴맛은
www.acmicpc.net
조함 for 버전
https://github.com/JUNGSOONIL/JAVA/blob/main/BAEKJOON%202961_COMBFOR
GitHub - JUNGSOONIL/JAVA: JAVA 소스 코드
JAVA 소스 코드. Contribute to JUNGSOONIL/JAVA development by creating an account on GitHub.
github.com
조합 not for 버전
https://github.com/JUNGSOONIL/JAVA/blob/main/BAEKJOON%202961_COMB
GitHub - JUNGSOONIL/JAVA: JAVA 소스 코드
JAVA 소스 코드. Contribute to JUNGSOONIL/JAVA development by creating an account on GitHub.
github.com
부분 집합 버전
https://github.com/JUNGSOONIL/JAVA/blob/main/BAEKJOON%202961_SUBSET
GitHub - JUNGSOONIL/JAVA: JAVA 소스 코드
JAVA 소스 코드. Contribute to JUNGSOONIL/JAVA development by creating an account on GitHub.
github.com
해당 문제는 조합과 부분집합을 이용해서 해결했다.
부분 집합을 이용하면 쉽게 해결 가능하고, 공집합의 부분만 신경 써주면 된다.
조합은 재귀를 호출하고 나면 증가하거나 변한 값을 다시 원상복구해 줘야 한다.
이 부분만 잘 확인하면 해결 가능하다.
728x90'알고리즘 > Baekjoon' 카테고리의 다른 글
Baekjoon 15649 N과 M (1) JAVA (0) 2021.11.06 Baekjoon 14889 스타트와 링크 JAVA (0) 2021.11.06 Baekjoon 15686 치킨 배달 JAVA (0) 2021.11.06 Baekjoon 11723 집합 JAVA (0) 2021.11.06 Baekjoon 3040 백설 공주와 일곱 난쟁이 JAVA (0) 2021.11.06 댓글