알고스팟 문제 링크: https://algospot.com/judge/problem/read/ALLERGY
n명의 친구들 각자가 m개의 음식중 먹을 수 있는 음식들이 입력으로 주어졌을때 한개의 음식도 먹지 못하는 친구가 발생하지 않게끔 하는 음식갯수의 최소값을 구하는 문제이다.
해결방법으로는 음식을 한개도 먹지 못하는 친구를 찾아 그 친구가 먹을 수 있는 음식을 추가하고 재귀호출 하는 방식이 있다.
이때 친구들이 문자열로 주어지기 때문에 canEat이나 eaters 같은 벡터 배열에 접근하기 어려우므로 map을 사용하여 친구들에 해당하는 문자열들을 정수형태로 바꿔서 index접근이 수월하도록 하였다.
코드 원본: https://github.com/sbl133/JongmanBook/blob/main/10.%20CombinatorialSearch/ALLERGY.cpp
댓글을 통한 코드리뷰, 질문, 지적 언제든 환영입니다!
reference: 프로그래밍 대회에서 배우는 알고리즘 문제해결전략1
'Algorithm > algospot' 카테고리의 다른 글
algospot 남극기지 (문제 ID: ARCTIC) c++ (0) | 2021.09.06 |
---|---|
algospot 카쿠로 (문제 ID: KAKURO2) c++ (0) | 2021.09.04 |
algospot 게임판 덮기 2 (문제 ID: BOARDCOVER2) (0) | 2021.09.02 |
algospot 미나스 아노르 (문제ID: MINASTIRITH) c++ (0) | 2021.09.01 |
algospot 문자열 합치기 (문제 ID: STRJOIN) c++ (0) | 2021.09.01 |