第四题我只写了个n2的动归,过了40,应该可以优化成nlogn,思路是把上升子序列分为两种情况的的dp,一种是断开的上升子序列(也就是有删除一次子数组的),一种是连续的上升子序列 记dp[i][0]代表以下标i的元素为结尾的连续上升子序列 记dp[i][1]代表以下标i的元素为结尾的断开的上升子序列 所有dp[i][0]和dp[i][1]都初始化为1 对于 i - 1 if arr[i] > arr[i-1]: dp[i][0] = dp[i-1][0] + 1 对于 j < i if arr[i] > arr[j]: dp[i][1] = dp[j][0] + 1
点赞 3

相关推荐

牛客网
牛客企业服务