`
caoruntao
  • 浏览: 467909 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

DP:zoj 1733 || poj 1458 Common Subsequence(最长公共子序列)

 
阅读更多

【转】http://blog.csdn.net/zxy_snow/article/details/6037072

#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <memory.h>
#define MAXLEN 300
using namespace std;
int maxlen[MAXLEN][MAXLEN];
int main(void)
{
 char str[MAXLEN],line[MAXLEN];
 int lens,lenl;
 while(cin >> str)
 {
  memset(maxlen,0,sizeof(maxlen));
  cin >> line;
  lens = strlen(str);
  lenl = strlen(line);
  for(int i=0; i<lens; i++)
   for(int k=0; k<lenl; k++)
    if( str[i] == line[k] )
     maxlen[i+1][k+1] = maxlen[i][k] + 1;
    else
     if( maxlen[i+1][k] > maxlen[i][k+1] )
      maxlen[i+1][k+1] = maxlen[i+1][k];
     else
      maxlen[i+1][k+1] = maxlen[i][k+1];
  cout << maxlen[lens][lenl] << endl;
 }
return 0;
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics