救救我,在线求调
  • 板块P2029 跳舞
  • 楼主SCma
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/3/8 22:53
  • 上次更新2023/10/23 22:09:23
查看原帖
救救我,在线求调
794146
SCma楼主2023/3/8 22:53
#include<bits/stdc++.h>
#define ri register int
#define int long long
using namespace std;
int s[14514],b[14514],dp[5010][5010];
//dp[第i个箭头][用了j步] 
int n,t,ans=-2114514; 
signed main(){
	ios::sync_with_stdio(false);
	cin.tie();
	cout.tie();
	
	cin >> n >> t;
	for(ri i=1;i<=n;i++) cin >> s[i];
	for(ri i=1;i<=n;i++) cin >> b[i];
	for(ri i=1;i<=n;i++) dp[i][0]=dp[i-1][0]-s[i];
	//初始化dp,第0步:用于初始模拟
	for(ri i=1;i<=n;i++){
		for(ri j=1;j<=i;j++){
			dp[i][j]=max(dp[i][j]-s[i],dp[i-1][j-1]+s[i]);
			if(j%t==0) dp[i][j] = max(dp[i-1][j]-s[i],dp[i-1][j-1]+s[i]+b[i]);
		}
	} 
	for(ri i=0;i<=n;i++) ans=max(dp[n][i],ans);
	
	cout << ans << endl;
	return 0;
}


2023/3/8 22:53
加载中...