题解 | #公共子串计算#
公共子串计算
https://www.nowcoder.com/practice/98dc82c094e043ccb7e0570e5342dd1b
#include <stdio.h>
#include <string.h>
int main() {
char a1[1024];
char a2[1024];
scanf("%s%s", a1, a2);
int i = 0;
int count = 0;
int max_num = 0;
int x, y;
for (int i = 0; a1[i] != '\0'; i++) {
for (int j = 0; a2[j] != '\0'; j++) {
count = 0;
x = i;
y = j;
while (a1[x] == a2[y]) {
if (a1[x] == '\0' || a2[y] == '\0')
break;
count++;
x++;
y++;
}
if (count > max_num) {
max_num = count;
}
}
}
printf("%d\n", max_num) ;
return 0;
}
查看14道真题和解析