做盗版小说网站违法吗,软文代写费用,西安哪家公司做网站,国外空间怎么上传网站P1802 5 倍经验日 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
嗑药固然可耻#xff0c;但是能让你快速变强 --鲁迅
手动滑稽#xff0c;话归正题
动态规划之背包入门01背包模板_爱莉我老婆的博客-CSDN博客
这是01背包的模板#xff0c;没看的可以去看看。
我们把…P1802 5 倍经验日 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
嗑药固然可耻但是能让你快速变强 --鲁迅
手动滑稽话归正题
动态规划之背包入门01背包模板_爱莉我老婆的博客-CSDN博客
这是01背包的模板没看的可以去看看。
我们把药品总量看成一个背包我们把打败每一人的药品消耗看成体积那么就是说我们把这个物品装进背包会产生一个价值不装进背包也会产生一个价值。那么我们在01背包的基础上改进可以写出如下状态转移方程
for(c1;ca;c) {String[] bStringsbr1.readLine().split( );int eInteger.parseInt(bStrings[0]);//输入打输时的价值即装不进背包的价值int fInteger.parseInt(bStrings[1]);//装进背包的价值int gInteger.parseInt(bStrings[2]);//物品所占的空间 for(db;d0;d--) {//枚举体积由于我们采用一维压缩所以倒序保证物品之多会被选择一件if(dg) {//体积达到从不装第c个物品前c-1个物品里边选取放到容积为d的背包dp[d]Math.max(dp[d]e, dp[d-g]f);//选择第c个物品}else {dp[d]dp[d]e;//体积不够直接装装不了的价值}}
}
完整代码 import java.awt.FontFormatException;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.lang.reflect.AnnotatedWildcardType;
import java.math.BigInteger;
import java.net.DatagramPacket;
import java.sql.SQLIntegrityConstraintViolationException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.LinkedList;
import java.util.Map;
import java.util.Objects;
import java.util.PriorityQueue;
import java.util.Scanner;
import java.util.Spliterator.OfPrimitive;
import java.util.function.IntToDoubleFunction;
import java.util.function.LongBinaryOperator;
import java.util.TreeMap;
import java.util.TreeSet;
import javax.management.relation.InvalidRelationTypeException;
import javax.print.attribute.standard.JobMessageFromOperator;
import javax.print.attribute.standard.JobPriority;
import javax.swing.plaf.ColorChooserUI;
import javax.swing.table.TableModel;
import javax.swing.text.TabSet;
import javax.xml.crypto.dsig.spec.DigestMethodParameterSpec;
public class Main {public static void main(String[] args) throws IOException {
Scanner scnew Scanner(System.in);
BufferedReader br1new BufferedReader(new InputStreamReader(System.in));
PrintWriter pw1new PrintWriter(System.out);
String[] aStringsbr1.readLine().split( );
int aInteger.parseInt(aStrings[0]);
int bInteger.parseInt(aStrings[1]);
dpnew long[b1];int c,d;
for(c1;ca;c) {String[] bStringsbr1.readLine().split( );int eInteger.parseInt(bStrings[0]);int fInteger.parseInt(bStrings[1]);int gInteger.parseInt(bStrings[2]); for(db;d0;d--) {if(dg) {dp[d]Math.max(dp[d]e, dp[d-g]f);}else {dp[d]dp[d]e;}}
}
System.out.println(5*dp[b]);}public static long[] dp;}
此题必须开long