uva 1507 (상태 압축 + dfs)
우리 에 게 n 가지 아 이 템 을 주 십시오. 모든 아 이 템 은 5 개의 값 이 있 습 니 다. 각각 a, b, c, d, e 입 니 다. 우 리 는 이 n 개의 아 이 템 중에서 k 개 를 선택 하여 이 k 개의 아 이 템 중의 max {a} + max {b} + max {c} + max {d} + max {e} 가 가장 크 고 출력 최대 치 입 니 다.
생각:
n 의 범 위 는 10000 이 고 모든 사람 은 5 개의 가치 만 있 습 니 다. 우 리 는 n 부터 시작 할 수 없고 이 5 개의 가치 부터 시작 할 수 있 습 니 다.
다섯 개의 값, 우 리 는 2 진법 으로 압축 할 수 있 습 니 다. 한 물건 에 대해 우 리 는 00000 ~ 11111 로 모든 상황 을 표시 합 니 다. 만약 에 한 사람 이 1 이 라면 우리 가 마지막 으로 이 물건 의 그 값 을 가 져 가 야 합 니 다. 예 를 들 어 10000 은 우리 가 a 를 가 져 가 는 것 을 대표 합 니 다.
우 리 는 모든 물품 의 이 32 개 값 (00000 ~ 1111) 을 미리 처리 한 후에 dfs 를 뛰 면 된다.
코드:
#include
#include
#include
#include
#include
#include
#include
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Rails Turbolinks를 페이지 단위로 비활성화하는 방법원래 Turobolinks란? Turbolinks는 링크를 생성하는 요소인 a 요소의 클릭을 후크로 하고, 이동한 페이지를 Ajax에서 가져옵니다. 그 후, 취득 페이지의 데이터가 천이 전의 페이지와 동일한 것이 있...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.