2.
判断题
- #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;
- }
1f 函数的返回值小于等于 \min\{n,m\}min{n,m}。()
2f 函数的返回值等于两个输入字符串的最长公共子串的长度。()
3当输入两个完全相同的字符串时,g 函数的返回值总是 true。()
单选题
4将第19行中的 v[m][n] 替换为 v[n][m],那么该程序()。
5当输入为 csp-j p-jcs 时,输出为()。
6当输入为 csppsc spsccp 时,输出为()。
1.
A. 正确
B. 错误
2.
A. 正确
B. 错误
3.
A. 正确
B. 错误
4.
A. 行为不变
B. 只会改变输出
C. 一定非正常退出
D. 可能非正常退出
5.
A. 0
B. 1
C. T
D. F
6.
A. T
B. F
C. 0
D. 1