[TyvjP1050] 最长公共子序列(DP)
传送门
f[i][j] 表示第 1 个串匹配到第 i 位,第 2 个串匹配到第 j 位的答案。
f[i][j] = max(f[i 1][j], f[i][j 1]) (a[i] != b[j])
f[i][j] = max(f[i 1][j], f[i][j 1], f[i 1][j 1] + 1) (a[i] == b[j])
——代码
1 #include <cstdio> 2 #include <cstring> 3 #include <iostream> 4 5 using std::max; 6 7 int n, m, f[2001][2001]; 8 char a[2001] = , b[2001] = ; 9 10 int main() 11View Code
上一篇:[POJ2446] Chessboard(二分图最大匹配-匈牙利算法)
DP
pla文件怎么看,pla文件用什么打开?
pl1文件怎么看,pl1文件用什么打开?
pl文件怎么看,pl文件用什么打开?
pl0文件怎么看,pl0文件用什么打开?
pkt文件怎么看,pkt文件用什么打开?
pkm文件怎么看,pkm文件用什么打开?
pks文件怎么看,pks文件用什么打开?
pka文件怎么看,pka文件用什么打开?
pkh文件怎么看,pkh文件用什么打开?
pkg文件怎么看,pkg文件用什么打开?