<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      最長公共子序列

      題目描述

      給你一個序列X和另一個序列Z,當Z中的所有元素都在X中存在,并且在X中的下標順序是嚴格遞增的,那么就把Z叫做X的子序列。
      例如:Z=是序列X=的一個子序列,Z中的元素在X中的下標序列為<1,2,4,6>。
      現給你兩個序列X和Y,請問它們的最長公共子序列的長度是多少?

      輸入描述

      輸入包含多組測試數據。每組輸入占一行,為兩個字符串,由若干個空格分隔。每個字符串的長度不超過100。

      輸出描述

      對于每組輸入,輸出兩個字符串的最長公共子序列的長度。

      輸入示例

      abcfbc abfcab
      programming contest 
      abcd mnp
      

      輸出示例

      4
      2
      0
      

      Java 代碼

      import java.util.Scanner;
      
      public class Main {
          public static void main(String[] args) {
              Scanner scanner = new Scanner(System.in);
              while (scanner.hasNext()) {
                  String str1 = scanner.next();
                  String str2 = scanner.next();
                  System.out.println(lcs(str1, str2));
              }
              scanner.close();
          }
      
          // 動態規劃解決最長公共子序列問題
          private static int lcs(String str1, String str2) {
              int m = str1.length();
              int n = str2.length();
              int[][] dp = new int[m+1][n+1];
      
              for (int i = 0; i <= m; i++) {
                  for (int j = 0; j <= n; j++) {
                      if (i == 0 || j == 0) {
                          dp[i][j] = 0;
                      } else if (str1.charAt(i-1) == str2.charAt(j-1)) {
                          dp[i][j] = dp[i-1][j-1] + 1;
                      } else {
                          dp[i][j] = Math.max(dp[i-1][j], dp[i][j-1]);
                      }
                  }
              }
              return dp[m][n];
          }
      }
      
      

      C++ 代碼

      #include<iostream>
      #include<vector>
      
      using namespace std;
      
      int f[110][110]; //到i,j有多少相同的元素
      
      int main(){
          string x; string y;
          while(cin>>x>>y){
              for(int i=1;i<=x.size();i++){
                  for(int j=1;j<=y.size();j++){
                      f[i][j]=max(f[i-1][j],f[i][j-1]);
                      if(x[i-1]==y[j-1]) f[i][j]=max(f[i-1][j-1]+1,f[i][j]);
                  }
              }
              cout<< f[x.size()][y.size()]<<endl;
          }
      }
      
      posted @ 2025-09-18 03:26  Lantz12  閱讀(11)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲 制服 丝袜 无码| 国产精品色内内在线播放| 狠狠亚洲色一日本高清色| 伊人久久大香线蕉av五月天| 亚洲人成网站观看在线观看| 午夜福利一区二区在线看| 人人玩人人添人人澡超碰| 亚洲精品国产综合麻豆久久99| 国产精品国产精品一区精品| 免费无码黄十八禁网站| 亚洲人成线无码7777| 国产粉嫩学生高清专区麻豆| 在线观看中文字幕国产码| 人妻在线无码一区二区三区| 成人午夜免费一区二区三区| 久久精品丝袜高跟鞋| 九九热在线精品视频99| 国产av不卡一区二区| 手机看片AV永久免费| 精品中文人妻中文字幕| 亚洲成在人天堂一区二区| 超清无码一区二区三区| 国产精品亚洲一区二区z| 日本熟妇人妻一区二区三区| 婷婷六月色| 激情综合网一区二区三区| 免费a级黄毛片| 精品国产一区二区三区香蕉| 国产老熟女一区二区三区| 99久久国产成人免费网站| 人妻少妇偷人一区二区| 爆乳女仆高潮在线观看| 91精品乱码一区二区三区| 国产成人片无码视频| 国产精品成人午夜久久| 艳妇乳肉豪妇荡乳av无码福利| 亚洲欧洲一区二区精品| 成人免费AA片在线观看| 国产精品有码在线观看| 北岛玲中文字幕人妻系列| 芳草地社区在线视频|