描述

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

现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章中出现的次数和第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配,即给定单词必须与文章中的某一独立单词在不区分大小写的情况下完全相同,如果给定单词仅是文章中某一单词的一部分则不算匹配。

【数据范围】

1 ≤ 单词长度≤ 10。

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

【输入输出样例 1 说明】

输出结果表示给定的单词 To 在文章中出现两次,第一次出现的位置为0。

【输入输出样例 2 说明】

表示给定的单词 to 在文章中没有出现,输出整数-1。

输入

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

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

输出

只有一行,如果在文章中找到给定单词则输出两个整数,两个整数之间用一个空格隔开,

分别是单词在文章中出现的次数和第一次出现的位置(即在文章中第一次出现时,单词首字

母在文章中的位置,位置从0 开始);如果单词在文章中没有出现,则直接输出一个整数-1。

样例输入

To
to be or not to be is a question

样例输出

2 0

提示

输入样例2

to

Did the Ottoman Empire lose its power at that time

输出样例2

-1

题意

如上

题解

模拟,详情看代码

代码

 1 #include<stdio.h>
 2 #include<string.h>
 3 using namespace std;
 4
 5 int main()
 6 {
 7     int pos=-1,ans=0,p=-1,k=0;//pos第一个位置,ans为个数,p为当前的位置,k为长度
 8     char a[11],word[1000001],ch;
 9     gets(a);
10     int la=strlen(a);
11     for(int i=0;a[i];i++)
12         if(a[i]>='A'&&a[i]<='Z')
13             a[i]+=32;
14     while(ch=getchar())
15     {
16         p++;
17         if(ch>='A'&&ch<='Z')
18             ch+=32;
19         if(ch!=' '&&ch!='\n')
20         {
21             word[k++]=ch;
22         }
23         else
24         {
25             if(k==la)//长度相同
26             {
27                 int f=1;
28                 for(int i=0;i<k;i++)
29                 {
30                     if(a[i]!=word[i])
31                     {
32                         f=0;
33                         break;
34                     }
35                 }
36                 if(f)
37                 {
38                     ans++;
39                     if(pos==-1)
40                         pos=p-k;
41                 }
42             }
43             k=0;
44         }
45         if(ch=='\n')
46             break;
47     }
48     if(pos==-1)printf("-1\n");
49     else printf("%d %d\n",ans,pos);
50     return 0;
51 }

转载于:https://www.cnblogs.com/taozi1115402474/p/8417452.html

TZOJ 4865 统计单词数(模拟字符串)相关推荐

  1. JSK-27321 统计单词数【字符串】

    统计单词数 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数. 现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在 ...

  2. Bailian4030 统计单词数【文本处理】

    4030:统计单词数 总时间限制: 1000ms 内存限制: 65535kB 描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次 ...

  3. 信息学奥赛一本通 1400:统计单词数 | 1954:【11NOIP普及组】统计单词数 | OpenJudge NOI 1.12 05 | 洛谷 P1308 [NOIP2011 普及组] 统计单词数

    [题目链接] ybt 1400:统计单词数 ybt 1954:[11NOIP普及组]统计单词数 OpenJudge NOI 1.12 05:统计单词数 洛谷 P1308 [NOIP2011 普及组] ...

  4. Python:读出文本本件,统计单词数输出;读出文本文件,随机输出其中的10个单词

    #读出文本本件,统计单词数输出:读出文本文件,随机输出其中的10个单词 import re import random f=open("this.txt","r" ...

  5. 【codevs1040】【01NOIPTG】统计单词个数,字符串的划分DP

    1040 统计单词个数 2001年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 给出一个长度不超过200的 ...

  6. 洛谷 - P1308 统计单词数(字符串+模拟)

    题目链接:点击查看 题目大意:给出一个字符串a和字符串b,现在问字符串b中有多少个单词与字符串a相等,并记录第一次出现的位置 题目分析:看似很简单的一个模拟题,其实包含了不少需要注意的地方: stri ...

  7. [ZCMU OJ]1750: 统计单词数(字符串处理/find运用)

    Description 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中的次数. 现在,请你编程实现这一功能,具体要求是:给定一个单词,请你 ...

  8. 1750: 统计单词数(某个单词出现次数)

    zcmu: 1750: 统计单词数 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 379 Solved: 74 [Submit][Status][Web ...

  9. 【HDU - 2072 】单词数(字符串读入技巧,sstream大法,水题,字符串读入格式)

    题干: lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数.下面你的任务是帮助xiaoou333解决这个问题. Input 有多组数据,每组一行 ...

最新文章

  1. 并发编程基础篇——第二章(如何创建线程)
  2. vmware虚拟机ubuntu开机黑屏问题解决
  3. 独家 | 手把手教你用R语言做回归后的残差分析(附代码)
  4. k8s网络架构图_唯品会基于Kubernetes(k8s)网络方案演进
  5. Blazor带我重玩前端(四)
  6. php读取excel 报错_php读取excel文件
  7. 判断101到200之间的素数
  8. 计算机平板传输软件,如何在iPad和电脑之间无线传输文件
  9. 南唐后主李煜诗词选编
  10. 【Openbravo开发】Openbravo windows开发环境搭建
  11. word文档正文页码从1开始
  12. dw网页制作教程百度云盘_详细的dw网页制作教程_dw中图片轮播
  13. 快播将关闭QVOD服务器 清理低俗和盗版内容
  14. 双鱼座男适合学计算机专业,双鱼座男生适合的职业是什么
  15. 任正非,你也太能装逼了吧?
  16. 外业精灵,在水土流失监测野外调查工作中的应用
  17. static(静态变量,方法)
  18. yum -y insytall nmap报错:​​​​​​​​已加载插件:fastestmirrorLoading mirror speeds from cached hostfile
  19. Spring Cloud(十一):Hystrix服务熔断-工作流程
  20. WKWebView高级使用

热门文章

  1. DOM0,DOM2,DOM3事件,事件基础知识入门
  2. HTML5的Video标签的属性,方法和事件汇总
  3. HTML网页制作:[12]使用框架结构之frameset
  4. Struts2自定义拦截器实例—登陆权限验证
  5. Neuroph studio max net
  6. 捉虫记 单步跟踪 条件断点 变量查看实践
  7. Android 通过 annotation ViewInject
  8. C语言的词法分析在长度规则方面采用的是什么策略?
  9. 有符号数据的符号位扩展
  10. 数据库实时转移之Confluent介绍(一)