- 标签:模拟、字符串、NOIp普及组、高性能
- 知识点:getline输入字符串
- 题目:
-
AC代码:
#include<iostream> #include<string> #include<cstring> using namespace std; int main() { string a,b; int i,cnt=0,begin; getline(cin,a); //字符串含有空格输入,不可以用cin,否则to me只能读到to getline(cin,b); for(i=0;i<=b.length()-a.length();i++){ int j; //关键:局部定义+break:判断一个单词 for(j=0;j<a.length();j++){ if(a[j]!=b[i]&&a[j]+32!=b[i]&&a[j]-32!=b[i])break;//大小写相差32 if(i>0&&b[i-1]!=' ')break; //优化:不是单词开头就结束 } //单词长度匹配,后面是空格或者句末 if(j==a.length()-1&&(b[j+i+1]==' '||j+i==b.length())){ cnt++; if(cnt==1)begin=i; } } if(cnt>0)cout<<cnt<<" "<<begin<<endl; else cout<<-1<<endl; return 0; }
不明白的地方欢迎大家指出
洛谷【入门5】字符串-P1308 统计单词数
最新推荐文章于 2024-07-05 08:08:54 发布