题目大意:要用N种材料建一条长为L的路,现在给出每种材料的长度w,起始地点x,发费c和耐久度f
问:在预算为B的情况下,建好这条路的最大耐久度是多少
解题思路:背包问题
dp[i][j]表示起始地点为i,发费为j的最大耐久度
可得转移方程
dp[i + w][j + c] = max(dp[i + w][j + c],dp[i][j] + f)
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
#define maxl 1010
#define maxn 10010
#define INF 0x3f3f3f3f
int L, N, B;
int dp[maxl][maxl];
struct component {