社区讨论

蒟蒻求救,为啥WA,感觉自己没写错啊QAQ

P18025 倍经验日参与者 3已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@lodn4hvk
此快照首次捕获于
2023/10/31 09:18
2 年前
此快照最后确认于
2023/11/07 00:00
2 年前
查看原帖
C
#define MAX_VAL 1000+5
#include <bits/stdc++.h>
using namespace std;

int n,x;
long long dp[MAX_VAL],cost[MAX_VAL],lose[MAX_VAL],win[MAX_VAL];

int main(int arg,char **argv){
    scanf("%d %d",&n,&x);
    for(int i=1;i<=n;i++) scanf("%lld %lld %lld",&lose[i],&win[i],&cost[i]);
    for(int i=1;i<=n;i++){
        for(int k=x;k>=0;k--){
            if(k>=cost[i]) dp[k] = max(dp[k]+lose[i],dp[k-cost[i]]+win[i]);
            else dp[k] += lose[i];
        }
    }
    cout<<dp[n]*5;
    return 0;
}
题目测试用例的:
CPP
in:
6 8
21 52 1
21 70 5
21 48 2
14 38 3
14 36 1
14 36 2
out:
1060
但是我代码输出的是1035,为啥会WA啊?

回复

2 条回复,欢迎继续交流。

正在加载回复...