Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
143844 | 陈家宝 | 判断子序列 | C++ | 通过 | 100 | 0 MS | 264 KB | 540 | 2024-04-19 13:13:18 |
#include<bits/stdc++.h> using namespace std; char s1[1001],s2[1001]; int maxlen[1001][1001]; int main(){ cin>>s1>>s2; int len1=strlen(s1),len2=strlen(s2),i,j; for(i=0;i<=len1;i++)maxlen[i][0]=0; for(j=0;j<=len2;j++)maxlen[0][j]=0; for(i=1;i<=len1;i++) for(j=1;j<=len2;j++){ if(s1[i-1]==s2[j-1])maxlen[i][j]=maxlen[i-1][j-1]+1; else maxlen[i][j]=max(maxlen[i-1][j],maxlen[i][j-1]); } if(maxlen[len1][len2]==min(len1,len2))cout<<"true"; else cout<<"false"; return 0; }