
0 点赞 评论 收藏
分享
渡7399:* 葫芦娃们平日里经常玩游戏,同时还会交流游戏心得。这一天大家在讨论一款游戏,游戏玩家可以对自己的人物进行技能加点,大家对加点方法产生了争论。已知这款游戏有N个技能序列,每个技能序列都有K个技能,并且对于每个技能序列,
* 必须学习前一个技能之后才能学习后一个技能,并且每个技能都需要花费S[i,j]个技能点才能学习,
* 当剩余技能点不足时这个技能没法学习,自然也没法学这个序列后续的技能。现在我们假设学习完每个技能后对人物有P[i,j]的数据提升。请问当给定T个技能点的情况下,玩家自由选择技能序列以及技能点支配方式,请问人物的数据提升最大是多少?
*第1行:N K T三个整数 (N代表有多少个技能序列, 1 <= N <= 1000, K代表每个技能序列的技能数量,1 <= K <= 100, T代表给定的技能点, 0 <= T <= 100000)
* 第2 .. N+1行: 每行代表第i个技能序列,同时第j个整数S[i,j]代表第i个技能序列的第j个技能需要的技能点S[i,j] (1 <= S[i,j] <= 20)
* 第N+2 .. 2N+1行: 每行代表第i个技能序列,同时第j个整数P[i,j]代表第i个技能序列的第j个技能带来的提升P[i,j] (1 <= P[i,j] <= 10000)
用例:
* 3 3 6
* 1 1 2
* 1 1 3
* 1 1 4
* 10 10 20
* 10 10 30
* 10 10 60
* 输出:80

0 点赞 评论 收藏
分享
冬泳乖鸽:我觉得T3的关键点就是在于check函数,当程序二分找数时,寻找的目标是找到那么一个数,首先它需要尽量小于V[i],但是这个数也需要保证与V[i]之间减去x的这种操作次数尽量少。由此一次次查找,找到的数就是答案。这只是我的理解哦

0 点赞 评论 收藏
分享

0 点赞 评论 收藏
分享
创作者周榜
更多
关注他的用户也关注了: