转化此题,可以发现最难求的地方是判断这个声音由多少个奶牛组成。 其实是一个背包问题。 设 f i f_i fi表示声音 i i i由多少个奶牛组成。 则 f i = min j = 1 B f i − V j + 1 \begin{aligned}f_i=\min_{j=1}^{B}{f_{i-V_j}+1}\end{aligned} fi=j=1minBfi−Vj+1。 其实是一个完全背包。 最后只要按题意模拟即可。