poj3670 eating together 简单的dp

   方法一:LIS/LDS

方法2:看到某位大牛的代码很简洁,总结思路如下

以lis为例

设a为读取到的数,f[i][j]为前i个数且所有成员<=j时的最长lis长度,则有:

    f[i][1]=f[i-1]+(a==1);

   f[i][2]=max{f[i][1],f[i-1][2]}+(a==2);

   f[i][3]=max{f[i][2],f[i-1][3]}+(a==3);

 然后进行优化可得如下代码


 


posted on 2012-03-06 17:02  andy_  阅读(226)  评论(0)    收藏  举报

导航