【蒟蒻求助/统计单词数/代码注释】样例1没过 20分
查看原帖
【蒟蒻求助/统计单词数/代码注释】样例1没过 20分
392865
服苏同学楼主2020/10/11 20:15
#include<bits/stdc++.h>
using namespace std;
int f=0,sum=0,p;//f用来记录是否是第一次查询到单词,sum表示符合的总数,p表示第一次找到的位置 
string word,text;
int lw,lt;
bool pd(int x){
	for(int j=0;j<=lw;j++)
		if(text[x+j]!=word[j]) return 0;
	if(x+lw==lt||text[x+lw+1]==' ') return 1;//在上面没有跳出的情况下,如果查询到文章最后一个字母或者后一个是空格,则符合 
	else return 0;
}
int main(){
	getline(cin,word);
	getline(cin,text);
	lw=word.length()-1;
	lt=text.length()-1;
	//cout<<lw<<' '<<lt;
	for(int i=0;i<=lw;i++)
		if(word[i]>='a'&&word[i]<='z') word[i]-=32;
	for(int i=0;i<=lt;i++)
		if(text[i]>='a'&&text[i]<='z') text[i]-=32;	//大小写统一 
	for(int i=0;i<=lt;i++){
		if(i==0&&word[0]==text[0])//文章第一个单词的判断情况 
			if(pd(0)){
				f=1;
				sum++;
				p=0;
			}
		else if(text[i]==word[0]&&text[i-1]==' ')//前面是空格才可以进入判断流程 
			if(pd(i))
				if(f==0){//如果不是第一次找到 
					f=1;
					p=i;
					sum++;
				}
				else 
					sum++;
	}
	if(f==0) cout<<"-1";
	else cout<<sum<<' '<<p;	
	return 0;
} 
2020/10/11 20:15
加载中...