题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2072
题目:

单词数 Problem Description

lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数。下面你的任务是帮助xiaoou333解决这个问题。
Input
有多组数据,每组一行,每组就是一篇小文章。每篇小文章都是由小写字母和空格组成,没有标点符号,遇到#时表示输入结束。
Output
每组只输出一个整数,其单独成行,该整数代表一篇文章里不同单词的总数。
Sample Input

you are my friend
#

Sample Output

4

题解:使用map容器和string组合。处理单词之间的空格,判断map中的单词是否存在即可。需要注意的是,空格可能会出现在单词前面或者是连续出现空格。
代码及注释如下:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<map>
#include<string>
using namespace std;
char a[1005];
int main() {while(gets(a)&&a[0]!='#') {int ans = 0;map<string,int> map;string s="";//初始化 for(int i=0;i<strlen(a);i++) {if(a[i]==' '&&s=="") continue;//处理多余的空格 if(a[i]==' ') {//单词间的空格 if(!map[s]) map[s]=++ans;//单词不存在,++anss = "";continue;}s+=a[i];//叠加字符 if(i==strlen(a)-1) {//末尾单词,要包括最后一个字符 if(!map[s]) map[s]=++ans;//单词不存在,++anss = "";}}cout<<ans<<endl;}return 0;
}

杭电 2072 单词数(题解+代码)相关推荐

  1. 2021杭电计算机考研数一英一408专业课考研经验贴

    2021杭电计算机考研数一英一408专业课考研经验贴 前言 考研准备 教材 其他 打基础阶段(3月-6月) 数学 英语 专业课 暑假冲刺阶段(7月-9月) 数学 英语 专业课 考前三个月(10月-12 ...

  2. 2022杭电多校5题解报告(同步自语雀)

    一.赛后总结 Wuhu~萌新又来啦~ 第一次在考场上写出NTT,虽然是比较裸,但感觉真的不错~ 开场看03,思路比较直,就是dijk,但跨层跳跃想了好久~最后想到了类似于B树或者B-树一类的层内链表, ...

  3. 2022杭电多校4题解报告(同步自语雀)

    一.赛后总结 嘤嘤嘤,本人纯萌新,深夜反思自己到底有多菜~(:′⌒`) 前天没写出状压,再前面不会SAM和圆方树,再往前不会NTT和FFT,真的是个啥也不会的萌新呢. 这场主要的问题在于02的0环和1 ...

  4. C++编程题目:吉祥数 题解+代码

    题目描述 为了迎接圣诞,信息学兴趣小组的同学们在辅导老师的带领下,举办了一个盛大的晚会,晚会的第一项内容是做游戏:猜数.老师给每位同学发一张卡片,每张卡片上都有一个编号(此编号为非负数,且小于255) ...

  5. 杭电2502--月之数

    月之数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  6. 杭电------2097 Sky数(C语言写)

    //这个题没有一次过,哈哈哈哈,题意理解错了,开始还以为是必须加起来等于22呢 //其实就是依次算出个进制下的和,虽然每个循环最多循环四次,但是还是加上必要的判断,想办法让 //提前结束 #inclu ...

  7. 【杭电数电实验】verilog入门指北

    verilog入门指北 前言 指北内容 面向人群 基础实验 1-15 代码参考 正文 ISE 的安装 实验的基本操作流程 可能出现的问题 创建工程闪退 希望删除某一文件,实际上并没有删除 如何编写测试 ...

  8. 用java爬取杭电oj已ac代码

    前言 电脑的硬盘突然坏了,新安装的eclipse的代码全没了,后来发现杭电上已经ac的代码可以查看到,我是个有强迫症的人,我宁愿做很多件不同的事也不愿意做一件相同的事(复制黏贴)许多次,所以就突发奇想 ...

  9. 2021杭电多校第八场补题

    比赛传送门:Contest Problem List (hdu.edu.cn) 1006)GCD Game 题目翻译:爱丽丝和鲍勃正在玩游戏. 他们轮流操作.有n个数字,a1,a2,...,an.每次 ...

最新文章

  1. 【BZOJ 1415】 1415: [Noi2005]聪聪和可可 (bfs+记忆化搜索+期望)
  2. 特征选择方法之信息增益
  3. web.config中httpRunTime的属性(转)
  4. webview与js交互
  5. 公开调用私有Java方法?
  6. JavaScript 中的 this
  7. java地图源码_Java集合源码分析(四)HashMap
  8. Java基础学习总结(183)—— Flyway 在项目中迁移数据实践
  9. 0基础半路转行学IT还来得及吗?
  10. Hadoop核心之HDFS 架构设计
  11. linux 登录直接进入系统,Linux登录和推出系统入门教程
  12. ibatis结果集resultClass的几种类型
  13. 【精品整站】WordPress自适应美女写真网站源码/美图整站源码带数据/安装即可运营
  14. phicomm虚拟服务器怎么设置方法,斐讯(PHICOMM)路由器设置步骤
  15. 基于MFC的U盘检测
  16. Android客户端和Java服务器端集成支付宝
  17. VS2010 MVC4下载地址
  18. 清北师哥推荐的CV/NLP 算法工程师培养计划,强无敌!
  19. Linux中常用的tar解压打包命令语法介绍
  20. SVG之Animation

热门文章

  1. android 获取wifi的ip地址吗,Android开发实现在Wifi下获取本地IP地址的方法
  2. 互联网摸鱼日报(2022-11-07)
  3. 爱心跳动-HTML-抖音火的那个
  4. 台达0.4KW伺服上电报AL013
  5. Centos 7.7下Oracle 11g RAC
  6. imx533 配置 制作SD卡启动文件系统
  7. 中国电信SIM卡绝杀冷、热钱包,区块链手机还没火就要凉凉?
  8. 递归下降分析法实现强化计算器
  9. JGG:肠道菌群与COVID-19重症风险密切关联
  10. 区块链行业前景还好吗?区块链技术有没有经过时间的检验?