JZOJ5220. 【GDOI2018模拟7.10】C(2017.8DP&贪心专题)

来源:互联网 发布:单片机项目设计教程 编辑:程序博客网 时间:2024/06/10 03:07

Description
这里写图片描述
Input
这里写图片描述
Output
这里写图片描述
Sample Input

aa
ab

Sample Output

2

Data Constraint
DP套DP
设f[i][j]为第1个字符串到第i位,第2个字符串到第j位的子序列最长长度
f[i][j]=max(f[i-1][j],f[i][j-1])
if s1[i]=s2[j] f[i][j]=max(f[i][j],f[i-1][j-1]+1)
设g[i][j]为第1个字符串到第i位,第2个字符串到第j位,最长子序列长度为f[i][j]的方案数
g[0][1]=1,g[0][0]=1,g[1][0]=1;
如果不匹配i这个点,那么f[i-1][j]=f[i][j]的话,那么g[i][j]+=g[i-1][j]
如果匹配i这个点,在s2中找出s2[k]=s1[j](k<=j),且k最大,那么g[i][j]+=g[i-1][k-1]
答案g[n][m]

原创粉丝点击