zoukankan      html  css  js  c++  java
  • 解题报告: luogu P1802

    题目链接:P1802 5倍经验日
    简单背包,由于输的部分可以先减掉,那么就能直接 (01) 背包了。

    (Code:)

    #include<iostream>
    #include<cstdio>
    #include<cmath>
    using namespace std;
    
    #define read(x) scanf("%d",&x)
    int n,w;
    int a[1005],b[1005],c[1005];
    int dp[1005];
    int sum=0;
    
    int main()
    {
    	read(n),read(w);
    	for(int i=1;i<=n;i++) read(a[i]),read(b[i]),read(c[i]),b[i]-=a[i],sum+=a[i];
    	for(int i=0;i<=w;i++) dp[i]=0;
    	for(int i=1;i<=n;i++)
    	{
    		for(int j=w;j>=c[i];j--)
    		{
    			dp[j]=max(dp[j],dp[j-c[i]]+b[i]);
    		}
    	}
    	printf("%lld
    ",1ll*5*(dp[w]+sum));
    	return 0;
    }
    
  • 相关阅读:
    linux串口
    在demo板上用串口和AT指令调试GPRS模块
    发送短信
    html
    JavaScript
    frp
    sunke推荐
    ubus
    2021-8
    缓存一致性协议
  • 原文地址:https://www.cnblogs.com/tlx-blog/p/12860520.html
Copyright © 2011-2022 走看看