记录编号 354867 评测结果 AAAAAAAAAA
题目名称 [NOIP 2011]统计单词数 最终得分 100
用户昵称 Gravatarzeppoe 是否通过 通过
代码语言 C++ 运行时间 0.199 s
提交时间 2016-11-23 13:47:42 内存使用 0.28 MiB
显示代码纯文本
/*
C++:

<string>

string str;

1. 字符串长度

   len = str.length();

   len = str.size();

2. 字符串比较

   可以直接比较

   也可以:

   str1.compare(str2); 

   str1.compare(pos1,len1,str2,pos2,len2); 值为负,0 ,正。

   nops 长度到完。

3. 附加

   str1 += str2;

   或

   str1.append(str2);

   str1.append(str2.pos2,len2);

4. 字符串提取

   str2 = str1.substr();

   str2 = str1.substr(pos1);

   str2 = str1.substr(pos1,len1);

5. 字符串搜索

   where = str1.find(str2);

   where = str1.find(str2,pos1); pos1是从str1的第几位开始。

   where = str1.rfind(str2); 从后往前搜。

6. 插入字符串

   不是赋值语句。

   str1.insert(pos1,str2);

   str1.insert(pos1,str2,pos2,len2);

   str1.insert(pos1,numchar,char);    numchar是插入次数,char是要插入的字符。

7. 替换字符串

   str1.replace(pos1,str2);

   str1.replace(pos1,str2,pos2,len2);

8. 删除字符串

   str.erase(pos,len)

   str.clear();

9. 交换字符串

   swap(str1,str2);*/
#include<cstdio>
#include<iostream>
#include<string> 
using namespace std;
int main()
{
	freopen("stat.in","r",stdin);
	freopen("stat.out","w",stdout);
	string a;
	string b;
	getline(cin,a);
	getline(cin,b);
	for (int i=0;i<a.length();i++) 
	{
		a[i]=tolower(a[i]);
		}		 
	for (int i=0;i<b.length();i++)
	{
		b[i]=tolower(b[i]);
	}
	a=" "+a+" ";
    b=" "+b+" ";
	if(b.find(a)==string::npos)//find方法返回一个名为 string::npos 的特殊值,说明查找没有匹配。.
	{
		cout<<-1<<"\n";
	}
	else{
		int w1=b.find(a);//储存第一次出现的位置 
		int w2=b.find(a),s=0;
		while (w2!=string::npos)//!=就是<>
		{
			s++;
			w2=b.find(a,w2+1);//从w2+1位置开始往后找 
		 } 
		 cout<<s<<" "<<w1<<"\n";
	} 
	
	return 0;
	
}