模拟题老师基本上都不讲,因为只要足够细心,大家都能做对。集训到今天就结束了。这次下来,

发现自己做模拟题已经很有手感了,相较于之前,真的有很大的成长。

简单的分析下这道题,

1、首先,要找出总共有多少段对话,就想到了用map<string, int>来存对话是否出现过,A->B,B->A只要没有出现hehehe...作为结束就属于同一段对话。

2、处理对话内容,把非字母转成空格,大写转小写,然后要把对话拆成单词,看是否是由hehehe...组成,就想到了前段学的stringstream

3、确定每个单词是否是由hehehe组成,这个非常简单,

输入要稍稍注意下,因为对话有空格的所以只能用gets(),或getline()接收,(或者其它我没学的,不以空格结束的接收字符串的)

代码如下:

#include <iostream>
#include <sstream>
#include <string>
#include<cstdio>
#include<map>
#include<cstring>
#include <cmath>using namespace std;map<string, int> cnt;int chi(char c[])
{int clen= strlen(c);if(clen%2!=0)return 0;else{for(int i=0; i<clen-1; i=i+2){if(c[i]!='h'||c[i+1]!='e')return 0;}return 1;}
}
int check(char s[])
{int slen=strlen(s);for(int i=0; i<slen; i++){if(isalpha(s[i]))s[i] = tolower(s[i]);elses[i] = ' ';}stringstream ss(s);char c[1005];while(ss>>c){if(chi(c)==1)return 1;}return 0;
}
int main()
{char a, b, s[1005];double sum=0, cont=0;while((scanf("%c->%c:", &a, &b))!=EOF){gets(s);string z, y;z += a+b;y += b+a;if((!cnt.count(z)&&!cnt.count(y))||(cnt[y]==0&&cnt[z]==0)){cnt[y]=1;cnt[z]=1;sum++;}if(check(s)==1)  //s串中有hehehe;{cont++;cnt[z]=0;cnt[y]=0;}}printf("%.0lf%%\n", cont/sum*100.0);return 0;
}

湖南省第十一届程序设计大赛 (水题)聊天止于呵呵相关推荐

  1. 湖南省第八届大学生程序设计大赛原题 D - 平方根大搜索 UVA 12505 - Searching in sqrt(n)...

    http://acm.hust.edu.cn/vjudge/contest/view.action?cid=30746#problem/D D - 平方根大搜索 UVA12505 - Searchin ...

  2. 吉首大学第七届“新星杯”程序设计大赛---补题概况

    吉首大学第七届"新星杯"程序设计大赛---补题http://120.78.162.102/contest.php?cid=1332 先来发图片...(唉...AC九道,就A不动了, ...

  3. 第13届 广东工业大学ACM程序设计大赛 C题 平分游戏

    第13届 广东工业大学ACM程序设计大赛 C题 平分游戏 题目描述 转眼间又过了一年,又有一届的师兄师姐要毕业了. ​ 有些师兄师姐就去了景驰科技实习. 在景驰,员工是他们最宝贵的财富.只有把每一个人 ...

  4. 湖南省第六届大学生程序设计大赛原题 F Biggest Number (UVA1182)

    Biggest Number http://acm.hust.edu.cn/vjudge/contest/view.action?cid=30851#problem/F 解题思路:DFS(检索)+BF ...

  5. 2010年湖南省第六届大学生程序设计大赛 F题 “Biggest Number” CSG - 1051 // UVA 11882 (dfs+bfs+剪枝)

    题目链接 一.题目内容 一个r行c列的矩阵,里面只有1-9的数字和'#',最开始可以随意挑选一个数字然后可以上下左右移动,问所走的路径所含数字最大为多少. 样例解释 input 3 7 ##9784# ...

  6. 中南林业科技大学第十一届程序设计大赛 D 最大的湖

    链接:https://ac.nowcoder.com/acm/contest/910/D 来源:牛客网 农场主约翰的农场在最近的一场风暴中被洪水淹没,这一事实只因他的奶牛极度害怕水的消息而恶化. 然而 ...

  7. 【非技术贴】记湖南省第九届程序设计大赛

    昨天诸事不顺,看来还是可以攒点人品. 先说说比赛过程吧(这个比较有价值但很容易忘记) 继续昨天的诸事不顺,进了考场,显示器跟键盘侧位一尺多,叫我怎么敲代码!?更可恶的,我们队的信封呢??找了半天隔壁队 ...

  8. 中南林业科技大学第十一届程序设计大赛题解

    B--兑换零钱 题目描述 现有N元钱,兑换成小额的零钱,有多少种换法?币值包括1 2 5分,1 2 5角,1 2 5 10 20 50 100元. (由于结果可能会很大,输出Mod 10^9 + 7的 ...

  9. 2016年安徽省程序设计竞赛 水题C,D,E 题解

    A,B太水了就不写了- - 感觉思路都挺清楚的,不多解释了 C.转啊转 Time Limit: 1000 MS Memory Limit: 65536 KB Total Submissions: 7 ...

最新文章

  1. 【转】判断UIViewController是否正在显示
  2. 为你揭示最危害程序员职业生涯的三大观念
  3. 进程与线程的区别:最浅显易懂的解释
  4. Win10桌面的图标都不见了怎么办 Win10电脑桌面图标找回方法
  5. 轻松实现web高可用!(keepalived实战讲解)
  6. STM32 位段详解
  7. 扩展的几个应用 发布网络YUM源 vim编辑技巧 源码编译安装 systemctl控制
  8. 软件插件安装激活教程以及密钥
  9. 用Python实现的数据化运营分析实例——销售预测
  10. 9. 广义表 - 广义表概念,存储结构,深度/长度,复制算法
  11. 【模拟器】华三模拟器HCL安装操作指导
  12. 本地电脑如何搭建web网站,并发布到公网访问?1-2
  13. 帝国CMS插件自动采集发布文章插件
  14. 理解left join的多次连续使用
  15. 缺氧游戏超级计算机在哪里研究,缺氧简易上手攻略_缺氧怎么玩_游戏堡
  16. 计算机驱动空间不够,为何我的电脑在安装显卡驱动的时候就是安装不成功,提示是磁盘空间不足,但是其余的磁盘都有130GB左右...
  17. 在家学习编码:冠状病毒隔离开发人员技能手册
  18. sublime快捷键设置(十年积累经常在用)
  19. 绘声绘影中文试用版下载
  20. 23种设计模式全解析

热门文章

  1. 5英寸小屏手机:何以统一性价比与体验?
  2. 手机发出微弱信号是如何被接收?
  3. Spring依赖注入的接口为null
  4. 我是如何通过获取网络数据,做出这些数据分析项目的
  5. 3. layui的layer的用法
  6. SAP库存管理之ABC分类法
  7. 免费全平台开源商用级OCR: RapidOCR
  8. 人员定位技术如何分类管理电厂复杂人群
  9. c语言线程通信方式,线程间通信及同步方法介绍
  10. Android网络请求-新大陆物联网云平台请求通信工程-使用Post登录新大陆云平台获取Token-物联网竞赛-物联网数据通信