1
captcha OP 算了一下 S 超过 10000 的话,好像每次使用 1 点是提升最快的。5000 以下则不确定,例如 4950、167 等很多。
4950 * 1.01 = 4999.5 ----> 4999 4999 * 1.01 = 5048.99 ---> 5048 4950 * 1.02 = 5049,一次用 2 点结果更大 感觉低位只能比较暴力地遍历,不知道有没有好的方法。 |
2
greyqz 2019 年 2 月 26 日 via Android
目测可以用动态规划解。
|
3
ballshapesdsd 2019 年 2 月 26 日
难道不是每次用一个强化点数直到用完吗
|
4
maggch 2019 年 2 月 26 日 via Android
n 方 dp
|
5
salinapper 2019 年 2 月 26 日
|
6
chairuosen 2019 年 2 月 26 日
@captcha 你在逗我。。。不管 n 是多大。n*1.01*1.01 和 n*1.02 哪个大?
|
7
ballshapesdsd 2019 年 2 月 26 日
@salinapper #5 审题不细致
|
8
captcha OP @chairuosen
没有逗你,表达式应该是 Math.floor(Math.floor( n * 1.01) * 1.01) 和 Math.floor(n * 1.02) |
10
yzwduck 2019 年 2 月 26 日
这数据范围就暗示着用动态规划欸。
记 M[x] 表示累计使用 x 个强化点数后的最大武器强度, M[0] = S; M[x] = upgrade(M[x-i], i), i=0..x。 然后 x 从 0 到 P。 |