如何解决最长公共子序列"在spoj?

时间:2017-07-23 11:47:24

标签: dynamic-programming

我得到"时间限制超过"甚至在使用具有时间复杂度O(n * m)的时间和存储器优化的动态编程解决方案之后。

1 个答案:

答案 0 :(得分:0)

让支持arr是包含值的数组

int size = sizeof(arr)/sizeof(int);

int dp[size];
for(int i=1; i<size; i++) {
    for(int j=0; j<i; j++) {
        if (a[i]>a[j] && dp[i]<dp[j]+1) 
            dp[i] = dp[j]+1;
    }
}

这将填满您的阵列并准备好解决LIS