一枚渣子


私信TA

用户名:uq_44501180482

访问量:14552

签 名:

笨蛋

等  级
排  名 24
经  验 15947
参赛次数 1
文章发表 238
年  龄 0
在职情况 在职
学  校 河南科技大学
专  业

  自我简介:

渣子

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		
		Scanner sc=new Scanner(System.in);
		int M=sc.nextInt();
		int N=sc.nextInt();
		int[]dp=new int[M+1];
		for (int i = 0; i < N; i++) {
			int w=sc.nextInt();
			int v=sc.nextInt();
			int s=sc.nextInt();
			if(s==0)s=10000;
			for (int j = 1; j <=s; s-=j,j*=2)   {
				for (int k = M; k >=j*w; k--) {
					dp[k]=Math.max(dp[k], dp[k-j*w]+j*v);
				}
			}
			if(s>0){
				for (int k = M; k >=s*w; k--) {
					dp[k]=Math.max(dp[k], dp[k-s*w]+s*v);
				}
			}
		}
		System.out.println(dp[M]);
	}
}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答

代码解释器

  评论区