第一个测试点用2个getline就过不了,用cin正常
查看原帖
第一个测试点用2个getline就过不了,用cin正常
1237348
arvin2023楼主2025/1/24 17:07

下面是能过的代码,没用库函数的实现

#include <bits/stdc++.h>
using namespace std;
string s1,s2; 
int main(){
//	getline(cin,s1);
//	getline(cin,s2);
	cin >> s1 >> s2; 
	int len1=s1.size();
	int len2=s2.size();
	int k=0;
	if(len1==len2 && len1==0){
		cout <<" is substring of "<<endl;
		return 0;
	}
	if(len1<=len2){
		for (int i=0;i<len2;i++){
			k=0;
			for (int j=0;j<len1;j++){
				if (s2[i+j]==s1[j]){
					k++;
				}else{
					break;
				}
			}
			if (k==len1){
				cout <<s1<<" is substring of "<<s2 <<endl;
				return 0;
			} 
		}
		 
	}else{		
		for (int i=0;i<len1;i++){
			k=0;
			for (int j=0;j<len2;j++){
				if (s1[i+j]==s2[j]){
					k++;
				}else{
					break;
				}
			}
			if (k==len2){
				cout <<s2<<" is substring of "<<s1 <<endl;
				return 0;
			}  
		}
	
	}
	cout <<"No substring";
	return 0;
}
 
2025/1/24 17:07
加载中...