题解 | #牛牛吃草#

牛牛吃草

https://www.nowcoder.com/practice/f05254f070944ff792c0dfefabd94fec

#include <iostream> 
#include <vector> 

using namespace std;



int main(){
    int n = 0;
    cin >> n;
    vector<int> w(n),a(n);
    for(int i = 0; i < n; i++){
        cin >> w[i];
    }
    
    for(int i = 0; i < n; i++){
        cin >> a[i];
    }
    int ans = 0;
    
    vector<int> dp(n+1,0);
    
    for(int i = 0; i < n; i++){
        dp[i] = w[i];
    }
    
    for(int i = 0; i < n; i++){
        for(int j = 0; j < i; j++){
            if((i-j)%a[j] == 0) dp[i] = max(w[i]+dp[j],dp[i]);
        }
        ans = max(ans,dp[i]);
    }
    
    cout << ans << endl;
    return 0;
}


全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 11:30
找工作7个月,投了7000封,3段世界五百强实习,才有一个offer,牛油们肯定比我强吧
码农索隆:不对不对不对,实习经历这么厉害,简历也没少投,问题出在哪呢
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务