90pts求调

P2760 科技庄园

你把我也整懵了,我也调不出来
by 赛克尔だよ @ 2022-07-25 12:55:14


@[_KAINF_](/user/754495) 你的快读有问题
by 赛克尔だよ @ 2022-07-25 12:58:23


```cpp #include<bits/stdc++.h> #define int long long using namespace std; const int MAXN=4e3+5,N=4e7+5; int n,m,q,p,po,a[MAXN][MAXN],b[MAXN][MAXN],x,dp[N],w[N],v[N],num,cnt; signed main(){ scanf("%d%d%d%d",&n,&m,&q,&p); po=min(q,p-1); for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) scanf("%lld",&a[i][j]); for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) scanf("%lld",&b[i][j]); for(int i=1;i<=n;i++) for(int j=1;j<=m;j++){ if(!a[i][j]||!b[i][j]) continue; cnt=2*(i+j); x=b[i][j]; while(x--){ w[++num]=cnt; v[num]=a[i][j]; } } for(int i=1;i<=num;i++) for(int j=po;j>=w[i];j--) dp[j]=max(dp[j],dp[j-w[i]]+v[i]); printf("%lld",dp[po]); return 0; } ``` @[_KAINF_](/user/754495) 这就离谱的AC了
by 赛克尔だよ @ 2022-07-25 12:58:51


|