#include<iostream> using namespace std; //加入第i张时可以装满,dp[i][j]=dp[i-1][j-w[i]],不加入i张也可以装满,dp[i-1][j]; //dp[i][0]=true,dp[0][j]=false; //优化成一维数组。 int main(){ int value[16]={0,8,8,8,8,8,10,10,10,10,18,18,18,18,18,18}; int maxn=5*8+4*10+6*18; bool dp[maxn+1]; for(int i=0;i<=m...