用find()函数的这种写法有什么问题吗?
求大佬找错,感谢!!!
%%%orz%%%
#include<bits/stdc++.h>
using namespace std;
string a[101];
int s;
inline int read(){
int s=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9')
{
while(ch=='-')
{
w*=-1;
}
ch=getchar();
}
while(ch>='0'&&ch<='9')
{
s=(s<<1)+(s<<3)+(ch^48);
ch=getchar();
}
return s*w;
}
int main(){
int n=read();
for(int i=1;i<=n;i++)
{
cin>>a[i];
transform(a[i].begin(),a[i].end(),a[i].begin(),::tolower);
}
getchar();
string t;
getline(cin,t);
transform(t.begin(),t.end(),t.begin(),::tolower);
for(int i=1;i<=n;i++)
{
int k=0;
while(k<t.size()-1&&t.substr(k,t.find('.',k)-k+1).find(a[i])!=-1)
{
k+=t.find('.',k)-k+1;
s++;
}
}
cout<<s;
return 0;
}