Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
3446 | 邓小龙 | 统计特定单词数 | C++ | Accepted | 0 MS | 264 KB | 1075 | 2024-06-08 11:45:26 |
# include<iostream> # include<cstring> using namespace std; string s1,s2; int cnt=0,pos=-1;//pos=-1代表还没找到 string lwl(string s){ int len_s=s.size(); for(int i=0;i<len_s;i++){ if(s[i]>='A'&&s[i]<='Z') s[i]=s[i]+32; } return s; } void fun(string s1,string s2){//统计s2当中包含多少个s1 int len_s1=s1.size(),len_s2=s2.size(); string ss; int i=0; for(i=0;i<len_s2;i++){ if(s2[i]!=' '){ ss=ss+s2[i]; } else{//遇到空格,表示已经统计了一个单词 if(ss==s1){ cnt++; if(pos==-1) pos=i-len_s1;//首个位置 } ss="";//重置 } } //特殊处理最后一个单词 if(ss==s1){ cnt++; if(pos==-1) pos=i-len_s1; } } int main(){ getline(cin,s1); getline(cin,s2); s1=lwl(s1); s2=lwl(s2); fun(s1,s2); if(cnt==0){ cout<<-1<<endl; } else cout<<cnt<<" "<<pos<<endl; return 0; }