T1.采药(medic) 有n个草药,要在m的时间内获得最大价值. 乍一看像是01背包,然而数据只能过50分. 考虑数据范围,t<=10,w<=10,所以只有121种草药.考虑多重背包的二进制优化,先统计每种草药的数量,然后可以拆成1,2,4,8--个草药(捆绑成一棵)然后就01背包 T2.方格取数(matrix) N*m的矩阵,从左上走到右下,走法不解释,将格子内的数相乘,求末尾0最少的个数. 考虑拆分,0的个数和2,5的个数有关,所以分别dp 2,5的最小值再取最小值即可.F[i][j]=…