문제 링크: https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5V4A46AdIDFAWu
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
시간에 쫓기며 풀었던 문제입니다. 다행히 어렵지 않았지만 급하게 짜다보니 코드가 많이 더럽네요. 개선할 부분이 있으면 개선해서 올려보도록 하겠습니다. 문제의 내용을 간단하게 말씀드리면 두 일꾼이 각각 한번에 얻을 수 있는 꿀은 C이고 가로로 M만큼의 범위내에서 얻을 수 있는 최대 이윤을 구하는 문제입니다.
각 일꾼에 대해 dfs돌리면서 해결하시면 됩니다. 일꾼1의 위치를 왼쪽 위에서 오른쪽 아래까지 내려오면 위치를 정해주면 일꾼2가 그 이후의 지역에서 벌꿀을 채취하면 됩니다. 일꾼1의 탐색을 dfs1 일꾼2의 탐색을 dfs2로 나누었는데 그냥 같은 함수입니다. 단지 일꾼1의 최대이윤을 계산해주느냐 일꾼2의 최대이윤을 계산해주느냐 차이 밖에 없습니다.
'문제 해결 > SWEA' 카테고리의 다른 글
[SWEA] 2382. 미생물 격리 (0) | 2020.01.02 |
---|---|
[SWEA] 2117. 홈 방범 서비스 (0) | 2020.01.02 |
[SWEA] 2112. 보호필름 (0) | 2019.12.30 |
[SWEA] 2105. 디저트 카페 (0) | 2019.12.28 |
[SWEA] 1953. 탈주범 검거 (0) | 2019.12.28 |