Gravatar
lihaoze
积分:1314
提交:352 / 742
发现了一个巨简便的算法,跟01背包很像,但是枚举方式需要改一下,推导的过程可以看我的博客

Gravatar
yrtiop
积分:2053
提交:304 / 803

Gravatar
op_组撒头屯
积分:2982
提交:327 / 662
sbwxc

Gravatar
乌龙猹
积分:1286
提交:469 / 784
找闺女找闺女

Gravatar
cstdio
积分:4755
提交:1198 / 2108
刚学会高精的时候很逗的看错了题,写了个一坨2×一坨3的玩意,蛤蛤
@raywzy 这个算法的证明其实是一道数论题

Gravatar
raywzy
积分:715
提交:235 / 509
这道题需要用高精度乘法(背代码狗撸过).....然后就是主要的算法思想:将这个数分成以2为首项公差为1的等差数列,最后肯定会有一个余数然后从后往前将这个数均匀的撒在前几个数中(即+1),若分完一遍发现余数不为0则继续从后往前撒,然后相乘就好了,(这种题谁能想得出来啊喂QAQ.....)....最DT的是第一次交的时候发现c数组初始化不为0.....我明明开的是局部变量啊魂淡TAT....

Gravatar
Truth.Cirno
积分:1589
提交:557 / 1253
动规+高精度乘法搞定
f[i]表示i分解后得到的最大乘积
需用一个二位的bool型数组标记每一个数在每种情况下是否用过