초보개발자

[PACKING] 여행짐싸기 본문

알고리즘/문제해결 소스코드

[PACKING] 여행짐싸기

___yejin 2016. 3. 4. 19:03

[PACKING] 여행짐싸기

  • 분류: 동적계획법
  • 난이도: 중
  • 입력: 테스트 케이스 C, 물건의 수 N, 캐리어의 용량 W, N개의 물건의 이름, 부피, 절박도 
  • 출력: 가져갈 수 있는 물건들의 최대 절박도의 합과 가져갈 물건들의 갯수. 단, 조합이 여럿일 경우 아무거나 출력해도 됨.
  • 소스


  • 소스 설명:
    1. pack(int capacity, int item) : 최대절박도를 계산하는 함수로, 동적계획법을 사용하였다. 해당 물건을 가져가나 마느냐를 체크하므로 for문이나 while문은 사용하지 않는다. 
    2. reconstruct(int capacity, int item, vector<string>& picked) : 계산된 절박도를 이용하여, 가져갈 목록을 역추적한다.
  • 참고 사이트:https://algospot.com/judge/problem/read/PACKING
  • 참고 소스 코드: 프로그래밍 대회에서 배우는 알고리즘 문제해결전략1


'알고리즘 > 문제해결 소스코드' 카테고리의 다른 글

[LAN] 근거리 네트워크  (0) 2017.03.02
[TRAVERSAL] 트리 순회 순서 변경  (0) 2017.02.21
[QUADTREE] 쿼드 트리 뒤집기  (0) 2016.05.20
[POTION] 마법의 약  (0) 2016.03.18
[POLY] 폴리오미노  (0) 2016.03.11
Comments