dp[i][j]:前i个人中有j个人选数学的最大分数。 for(int i = 1; i <= 40; ++i) { dp[i][0] = dp[i-1][0] + b[i]; for(int j = max(1, i-20); j <= min(i, 20); ++j) { dp[i][j] = max(dp[i-1][j-1] + a[i], dp[i-1][j] + b[i]) } } dp[40][20]就是结果。
点赞 评论

相关推荐

昨天 13:41
西南大学 Java
点赞 评论 收藏
分享
2025-12-26 10:52
河北传媒学院 Java
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务