POJ 3670 Eating Together
摘要:
之前一直不过,最后的过的思路如下:dp[i][j]表示的含义是 到第i位,最高为j的子序列的最长长度。递推式:dp[i][1] = dp[i-1][1] + (a[i] == 1?1:0);dp[i][2] = max(dp[i][1], dp[i-1][2]) + (a[i]==2?1:0);dp[i][3] = max3(dp[i][1], dp[i][2], dp[i-1][3]) + (a[i]==3?1:0)高度为1的,最长只能为之前的,加上本身(如果本身是1则可加,否则不行)(1111_)高度为2的,为刚才算出的 高1序列最长 与 之前高2序列最长 的最大值 再视情况包含本身。(. 阅读全文
posted @ 2013-05-09 12:44 ShineCheng 阅读(139) 评论(0) 推荐(0) 编辑