1#/3#点位WA,1#点自己输入能过,而且和洛谷编译出来结果不一样 求各位大佬帮忙看看
#include<stdio.h>
#include<cstring>
int isletter(char);
int main(void)
{
char word[11];
char arti[1000020];
int i,j,n,cnt,no;
fgets(word, 11, stdin);
fgets(arti, 1000020, stdin);
n=strlen(word)-1; //单词长度,fgets会多读一个\n,因此-1
cnt=0;
for(i=0; i<1000020; i++){ //从文章第i个字符起,判断后面n个字符是否与单词匹配
for(j=0; j<n; j++){
if(!(word[j]==arti[i+j]||word[j]==(arti[i+j]+32)||word[j]==(arti[i+j]-32))){
goto label;
}
}
if(isletter(arti[i+n])||isletter(arti[i-1])){ //判断从i-1,i+n字符是否为空格,即单词前后是否为空格
label:
continue;
}
else{
cnt++; //计数
if(cnt==1){ //第一次找到单词时记录文章中位置
no=i;
}
}
}
if(cnt==0){
printf("-1");
}
else{
printf("%d %d", cnt, no);
}
return 0;
}
int isletter(char a){
if((a>64&&a<91)||(a>96&&a<123)){
return 1;
}
else{
return 0;
}
}