感觉毫无问题,可以贴回去自己运行看看,但过不了
查看原帖
感觉毫无问题,可以贴回去自己运行看看,但过不了
1119264
IX_MUXI楼主2023/11/12 12:19
#include <stdio.h>
#include <stdlib.h>
char str1[1200];
char str2[1200];
int len1,len2;
int result[1200][1200];
int i,j;
void fun();

int main()
{
    scanf("%s",str1+1);
    scanf("%s",str2+1);
    len1 = strlen(str1+1);
    len2 = strlen(str2+1);
    for(i=0;i<=len1;i++)
        result[i][0]=0;
    for(j=0;j<=len2;j++)
        result[0][j]=0;
    fun();
    printf("%d",result[len1][len2]);
    return 0;
}

void fun()
{
    for(i=1;i<=len1;i++){
        for(j=1;j<=len2;j++){
            if(str1[i]==str2[j]){
                result[i][j]=result[i-1][j-1]+1;
            }
            else{
                result[i][j]=result[i-1][j]>result[i][j-1]?result[i-1][j]:result[i][j-1];
            }
        }
    }
}

2023/11/12 12:19
加载中...