알고리즘 : 바이너리 최적화, 동적 프로그래밍
사용법 #include <iostream> #INCLUDE <알고리즘> #INCLUDE <CString을> 사용 스페이스 성병; CONST의 INT에서 N = 2010 ; INT의 V [N], [N] w, CNT; INT F [N]; INT 본체 ( 무효 ) { INT의 N, m; CIN >> >> N m; 위한 ( int로 난 = 1 , A, B,이야, 난 = <N; i가 ++ ) { CIN 사항 >> >> B >> S; INT의 K = 1 ; 반면 (K <= S) { CNT ++; V [카본 나노 튜브] 는 * = K 단계; w [CNT]는 B 형 *의 = K 단계; (S) - = K; K * = 2 ; } 경우 (S> 0 ) { CNT ++ ; V [카본 나노 튜브] 는 * = 들; w [CNT]는 B * = S; } } N = CNT; 위한 ( int로 I = 1 ; i가 <= N; 내가 ++ ) { 대 ( INT J = m; J> = V [I] j-- ) { F [J] = 최대 (F [J], F [JV [I] + w [I]); } } COUT << F [m] << ENDL; 반환 0 ; }