题型:组合题
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int f(string x,string y){
int m=x.size();
int n=y.size();
vector<vector<int>>v(m+1,vector<int>(n+1,0));
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
if(x[i-1]==y[j-1]){
v[i][j]=v[i-1][j-1]+1;
}else{
v[i][j]=max(v[i-1][j],v[i][j-1]);
}
}
}
return v[m][n];
}
bool g(string x,string y){
if(x.size() != y.size()){
return false;
}
return f(x+x,y)==y.size();
}
int main(){
string x,y;
cin>>x>>y;
cout<<g(x,y)<<endl;
return 0;
} (1).当输入两个完全相同的字符串时,g函数的返回值总是true( )
| A.正确 | B.错误 |
f函数的返回值小于等于min(n,m)。
| A.正确 | B.错误 |
当输入为“csppsc spsccp”时,输出为:( )
| A. "T" |
B. "F" |
| C. "0" |
D. "1" |
f函数的返回值等于两个输入字符串的最长公共子串的长度。( )
| A.正确 | B.错误 |
当输入为“csp-j p-jcs”时,输出为:( )
| A. "0" |
B. "1" |
| C. "T" |
D. "F" |
将第19行中的“v[m][n]”替换为“v[n][m]”,那么该程序( )
| A. 行为不变 |
B. 只会改变输出 |
| C. 一定非正常退出 |
D. 可能非正常退出 |
更新时间:2023-09-18 20:02:50
|
【知识点】
CCF非专业级别软件能力认证CSP-J/入门级
抱歉! 您未登录, 不能查看答案和解析点击登录











