博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
洛谷 P1308 统计单词数【string类及其函数应用/STL】
阅读量:4968 次
发布时间:2019-06-12

本文共 1722 字,大约阅读时间需要 5 分钟。

题目描述

一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。

现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章中出现的次数和第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配,即给定单词必须与文章

中的某一独立单词在不区分大小写的情况下完全相同(参见样例1 ),如果给定单词仅是文章中某一单词的一部分则不算匹配(参见样例2 )。

输入输出格式

输入格式:

 

输入文件名为stat.in ,2 行。

第1 行为一个字符串,其中只含字母,表示给定单词;

第2 行为一个字符串,其中只可能包含字母和空格,表示给定的文章。

 

输出格式:

 

输出文件名为stat.out 。

只有一行,如果在文章中找到给定单词则输出两个整数,两个整数之间用一个空格隔开,分别是单词在文章中出现的次数和第一次出现的位置(即在文章中第一次出现时,单词首字母在文章中的位置,位置从 0 开始);如果单词在文章中没有出现,则直接输出一个整数-1。

 

输入输出样例

输入样例#1: 
To to be or not to be is a question
输出样例#1: 
2 0
输入样例#2: 
to Did the Ottoman Empire lose its power at that time
输出样例#2: 
-1

说明

数据范围

1≤ 单词长度≤10。

1≤ 文章长度≤1,000,000。

noip2011普及组第2题

//在此也建议大家多用用string类,c++有关于string的特大好处,c和pascal都没有哦////定义头文件#include 
#include
//命名空间using namespace std;int main(){ //定义两个字符串 string a; string b; //用string库,调用getline, 直接读入一整行 getline(cin,a); getline(cin,b); //转换大小写,可以都转换为大写,或者小写 for (int i=0;i
string类

 

#include
#include
#include
#include
using namespace std;string s,sf;int t;//计数器; int main(){ getline(cin,sf); getline(cin,s); int j; for(j=0;j<=sf.size();j++)sf[j]=tolower(sf[j]); for(j=0;j<=s.size();j++)s[j]=tolower(s[j]);//全部转换成小写,便于比较 sf=' '+sf+' '; s=' '+s+' ';//首位加空格 int posi=-1;//出现位置,初始化为-1 int fpos=0;//首次出现位置 if(s.find(sf)==string::npos){cout<<"-1"; return 0;}//找不到就输出-1,退出 fpos=s.find(sf);//记录首次 while(s.find(sf,posi+1)!=string::npos){
//统计出现次数 posi=s.find(sf,posi+1); t++; } cout<
<<" "<
View Code

 

转载于:https://www.cnblogs.com/Roni-i/p/7726558.html

你可能感兴趣的文章
自己动手构造编译系统++编译、汇编与链接pdf
查看>>
JAVA 中文件读写函数BufferedReader 和 BufferedWriter 的使用
查看>>
Codeforces Round #206 (Div. 2)
查看>>
提升混合应用页面打开速度的新思路
查看>>
Mycat分表分库
查看>>
2019.7.11
查看>>
Php取扩展名
查看>>
模板的文件名和方法名一定要一致!!
查看>>
**p
查看>>
优先队列详解
查看>>
VS2012 创建项目失败,,提示为找到约束。。。。
查看>>
外观模式(Facade Pattern)
查看>>
PHP-----数组和常见排序算法
查看>>
通过给定的文件流,判断文件的编码类型
查看>>
zookeeper(3) 持久化
查看>>
Windows Socket I/O模型 以及 Linux Epoll模型 的有关资料(转)
查看>>
用guava快速打造两级缓存能力
查看>>
随服务初始化的Servlet
查看>>
如何修改eclipse中maven默认仓库路径
查看>>
mysql--插入,删除
查看>>