第四题是dp题:例如
6 4
1 4 3 7 6 2
题解如下:
1.首先删除4个数等价于留下2个数。
2.跟数组顺序无关,因此先将数组排序成:1 2 3 4 6 7
3.枚举每个元素a比其大的且成倍数关系的元素,例如:
1有{2,3,4,6,7}
2有{2,4,6}
3有{6}
4有{}
6有{}
7有{}
4.推导状态转移方程,先思考留下1个数,当留下1个数的时候,dp[i][1]的方案数都等于1。留下2个数,对于每一个元素,只要累加比其大且成倍数关系的元素j的dp[j][2-1]即可。此时dp[1][2]等于5、dp[2][2]等于3、dp[3][2]等于1,其余元素都是0,将其加起来就是8,就等于方案数。依次类推到n,时间复杂度O(n^2)。