1. 程式人生 > >hdoj2602 0/1揹包 動態規劃 模版題(ava版)

hdoj2602 0/1揹包 動態規劃 模版題(ava版)

題目連結 這是一道0/1揹包的模版題,比較簡單

import java.util.Arrays;
import java.util.Scanner;

/*
 * 01揹包模版題
 */
public class Main {
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		int t=sc.nextInt();
		int dp[]=new int[1005];
		int p[]=new int[1005];
		int w[]=new int[1005];
		while(t-->0){
			Arrays.fill(dp, 0);
			int n,v;
			n=sc.nextInt();
			v=sc.nextInt();
			for(int i=0;i<n;i++){
				p[i]=sc.nextInt();
			}
			for(int i=0;i<n;i++){
				w[i]=sc.nextInt();
			}
			for(int i=0;i<n;i++){
				for(int j=v;j>=w[i];j--){
					dp[j]=Math.max(dp[j], dp[j-w[i]]+p[i]);
				}
			}
			System.out.println(dp[v]);
		}
		sc.close();
	}
}