求教昨晚网易游戏笔试第一题思路是不是这样的呢

请问一下昨晚的做了网易笔试的,第一题是不是这样做,没样例没法测,应该是背包问题,只是人气减2那里要从后往前推

int solve(int A, int B, int C, int start, int end)
{
vector<int> dp(2*end+1 , 0);
for (int i = start; i <= 2*end ; i++)
if (i >= start + 2)
dp[i] = dp[i - 2] + A;
for (int i = start; i <= 2*end; i++)
if (i >= 2 * start && i % 2 == 0)
dp[i] = min(dp[i], dp[i / 2] + B);
for (int i = 2*end-2; i >= start; i--)
dp[i] = min(dp[i], dp[i + 2] + C);

return dp[end];
}

#笔试题目#
全部评论
编译通过没
点赞 回复 分享
发布于 2018-03-22 21:53
题目是什么
点赞 回复 分享
发布于 2018-03-22 11:14

相关推荐

dian3b:挺妙的,如果上纲上线显得不合人心,但是这样以来既能监督适当摸鱼,也有一定的人文关怀。
摸鱼被leader发现了...
点赞 评论 收藏
分享
昨天 22:04
武汉大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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