#include<bits/stdc++.h>
using namespace std;
char tar[11],passage[1000001];
int main()
{
int i,j;
int count=0,first=0;
cin.getline(tar,11);//读入需查找的单词
cin.getline(passage,1000001);//读入一整行,含空格
for(i=0;passage[i]!=0;i++){
if((i==0||passage[i-1]==' ')&&(passage[i]==tar[0]||abs(passage[i]-tar[0])==32)){//如果是一个单词的首字母和需查找的单词的首字母一致
for(j=1;tar[j]!=13;j++){
//开始向后匹配 if(passage[i+j]!=tar[j]&&abs(passage[i+j]-tar[j])!=32)//如果和需查找的单词不同
break;
}
if(tar[j]==13&&passage[i+j]==' '){//如果段落中的单词和需查找单词一致
count++;
if(count==1)//记录第一个匹配的位置
first=i;
}
}
}
if(count==0)
cout << -1;
else
cout << count << ' ' <<first << endl;
return 0;
}
只过了测试点2和测试点4,下载了测试点1,在洛谷IDE上的运行结果和测试点1的.out文件完全一致。
![.out文件](C:\Users\qwe13\Desktop\1.png)
![洛谷IDE运行结果](C:\Users\qwe13\Desktop\2.png)