卑微的绝望 @ 2018-02-18 16:23:26
发了代码也没人看,就这样吧哈哈哈哈哈哈哈 就是WA第四点。 本来是16700,我的程序输出16500 然后就90了
by 览遍千秋 @ 2018-02-18 16:28:02
那你发这个讨论是干什么的
by _WA自动机 @ 2018-02-18 19:12:24
你好啊。
再见。
by 卑微的绝望 @ 2018-02-19 09:43:28
@kaiming寻找问题啊
by 卑微的绝望 @ 2018-02-19 09:58:34
我敢保证:发了代码也没人看
using namespace std;
int F[65][32050];
struct Node{ int price; int imp; int who; };
Node a[65];
int w[65][3],t[65];
int main(){ int v,n; cin>>v>>n; for(int i=1;i<=n;i++){ cin>>a[i].price>>a[i].imp>>a[i].who; if(a[i].who!=0){ t[a[i].who]++; w[a[i].who][t[a[i].who]] = i; } } for(int i=1;i<=n;i++){ if(a[i].who != 0){ for(int j=1;j<=v;j++){ F[i][j] = F[i-1][j]; } continue; } if(a[i].who == 0) for(int j=a[i].price;j<=v;j++){ F[i][j] = max(F[i-1][j],F[i-1][j-a[i].price] + a[i].price a[i].imp); if(j >= a[i].price + a[w[i][1]].price && w[i][1] != 0) F[i][j] = max(max(F[i][j],F[i-1][j]),F[i-1][j - a[i].price - a[w[i][1]].price] + a[i].price a[i].imp + a[w[i][1]].imp* a[w[i][1]].price); if(j>=a[i].price + a[w[i][1]].price + a[w[i][2]].price && w[i][2] != 0 && w[i][1] != 0){ F[i][j] = max(max(F[i][j],F[i-1][j]),F[i-1][j-(a[i].price + a[w[i][1]].price + a[w[i][2]].price)]
by 卑微的绝望 @ 2018-02-19 09:59:45
就是代码写的不漂亮,洛谷这个文档规划不太好(^=^)
by _King__ @ 2018-08-24 14:52:24
@你好啊,再见 你不用markdown当然没人看