首页 > 其他分享 >天梯赛L1-070 吃火锅

天梯赛L1-070 吃火锅

时间:2023-05-08 13:13:59浏览次数:39  
标签:输出 070 int chi1 huo3 flag 天梯 L1 guo1

一、问题描述

chg.jpg

以上图片来自微信朋友圈:这种天气你有什么破事打电话给我基本没用。但是如果你说“吃火锅”,那就厉害了,我们的故事就开始了。

本题要求你实现一个程序,自动检查你朋友给你发来的信息里有没有 chi1 huo3 guo1

输入格式:

输入每行给出一句不超过 80 个字符的、以回车结尾的朋友信息,信息为非空字符串,仅包括字母、数字、空格、可见的半角标点符号。当读到某一行只有一个英文句点 . 时,输入结束,此行不算在朋友信息里。

输出格式:

首先在一行中输出朋友信息的总条数。然后对朋友的每一行信息,检查其中是否包含 chi1 huo3 guo1,并且统计这样厉害的信息有多少条。在第二行中首先输出第一次出现 chi1 huo3 guo1 的信息是第几条(从 1 开始计数),然后输出这类信息的总条数,其间以一个空格分隔。题目保证输出的所有数字不超过 100。

如果朋友从头到尾都没提 chi1 huo3 guo1 这个关键词,则在第二行输出一个表情 -_-#

输入样例 1:

Hello!
are you there?
wantta chi1 huo3 guo1?
that's so li hai le
our story begins from chi1 huo3 guo1 le
.
 

输出样例 1:

5
3 2
 

输入样例 2:

Hello!
are you there?
wantta qi huo3 guo1 chi1huo3guo1?
that's so li hai le
our story begins from ci1 huo4 guo2 le
.
 

输出样例 2:

5
-_-#

二、设计思路

(1)先从键盘接收n,作为朋友发的消息的总数;

(2)利用循环,接收n条消息;

(3)定义一个变量k,来代表满足要求的消息的个数;

(4)并定义一个变量flag来保存第一次出现“吃火锅”的消息出现的位置(即这条消息是第几条消息);

(5)如果消息中包含“吃火锅”,k++;

(6)如果k!=0------------输出k和flag;如果k=0----------输出-_-#;

三、程序流程图

 

四、伪代码

五、代码

 1 #include <iostream>
 2 using namespace std;
 3 #include <string>
 4 int main()
 5 {
 6     string s[101];
 7     int i = 0;
 8     int flag = 0;
 9     int count = 0;
10     int cnt = 0;      //出现火锅的次数
11     string m = "chi1 huo3 guo1";
12     while (getline(cin, s[i]))
13     {
14         if (s[i] == ".")
15         {
16             break;
17         }
18 
19         if (s[i].find(m) != -1)
20         {
21             if (!flag)
22             {
23                 flag = i + 1;
24             }
25             cnt++;    
26 
27 
28         }
29         i++;
30 
31     }
32     cout << i << endl;
33     if (!cnt)
34     {
35         cout << "-_-#" << endl;
36     }
37     else
38     {
39         cout << flag << " " << cnt << endl;
40     }
41 
42     return 0;
43 }

 

六、总结

(1)string的find函数可以在一个字符串中查找另一个字符串或者另一个元素,如果找到,返回下标,未找到则为-1;

(2)多层if条件可以用来控制多个要求,找出满足多个要求的数据;

标签:输出,070,int,chi1,huo3,flag,天梯,L1,guo1
From: https://www.cnblogs.com/lian369/p/17381408.html

相关文章

  • Windows10下安装OpenSSL curl WIN32 /WIN64 openssl1.1.x
     首先是环境,强调下环境,很多问题是环境造成的。1.WINDOWS1064位系统;2.VisualStudio2015 工具: 1.ActivePerl-5.24.3.2404-MSWin32-x64-404865.exe,下载地址:https://www.activestate.com/products/activeperl/downloads/  2. openssl-1.1.0f.tar.gz  下载地址: h......
  • L19_用日语表达自己想要某个东西
    概述在商店买东西的时候,想要告诉店员自己想要买某个物品,可以采用如下句式:物品名称が欲しいですが通过上述表达,可以告诉对方自己的需求,需要注意的是句尾要降下来,读的轻一点。动画会话A:あの、すみません。手袋が欲しいんですが。啊,打扰了,我想要一副手套。B:手袋(てぶく......
  • 天梯赛L1-058 6翻了
    一、问题描述“666”是一种网络用语,大概是表示某人很厉害、我们很佩服的意思。最近又衍生出另一个数字“9”,意思是“6翻了”,实在太厉害的意思。如果你以为这就是厉害的最高境界,那就错啦——目前的最高境界是数字“27”,因为这是3个“9”!本题就请你编写程序,将那些过时的、只......
  • leveldb无法在wsl1中使用
    1、WSL1不支持FUSE文件系统,因此无法在WSL1中直接使用LevelDB。LevelDB使用FUSE来提供基于文件的存储,因此在WSL1中无法正常运行。但是,您仍然可以在WSL1上使用Leveldb的API,只需将数据存储在本地文件系统中即可。这意味着您需要使用本地Windows文件系统或其他支持......
  • [Leetcode] 0705. 设计哈希集合
    705.设计哈希集合EnglishVersion题目描述不使用任何内建的哈希表库设计一个哈希集合(HashSet)。实现MyHashSet类:voidadd(key)向哈希集合中插入值key。boolcontains(key)返回哈希集合中是否存在这个值key。voidremove(key)将给定值key从哈希集合中删除。如果......
  • 天梯赛L1-028 判断素数
    一、问题描述本题的目标很简单,就是判断一个给定的正整数是否素数。输入格式:输入在第一行给出一个正整数N(≤ 10),随后N行,每行给出一个小于231的需要判断的正整数。输出格式:对每个需要判断的正整数,如果它是素数,则在一行中输出Yes,否则输出No。输入样例:211111 输出样例:Yes......
  • plsql11.0.61796下载
    官网版本列表https://www.allroundautomations.com/registered-plsqldev/ plsql11.0.6https://www.allroundautomations.com/files/plsqldev1106x64.exe语言包https://www.allroundautomations.com/plsqldevlang/110/chinese.exe注册信息productcode:4vkjwhfeh3ufnqnmp......
  • L1-062 幸运彩票
    题目:彩票的号码有6位数字,若一张彩票的前3位上的数之和等于后3位上的数之和,则称这张彩票是幸运的。本题就请你判断给定的彩票是不是幸运的。输入格式:输入在第一行中给出一个正整数N(≤ 100)。随后N行,每行给出一张彩票的6位数字。输出格式:对每张彩票,如果它是幸运的,就在一行......
  • rockyLinux 初体验(教程)PostgreSQL15
    目录数据库软件PostgreSQL安装数据库软件PostgreSQL配置数据库软件PostgreSQL交互通用数据库管理软件DBeaver彼时,PostgreSQL已经更新到了15.2。距离我上一次写PostgreSQL教程2022-03-20,已经过去一年多了。Linux篇PostgreSQL教程很久之前就想写了,一直停留在想法上......
  • Windows更新失败(0x8007000d)
    “管理员:命令提示符”窗口中,键入以下命令。在每项命令后按Enter键:DISM.exe/Online/Cleanup-image/ScanhealthDISM.exe/Online/Cleanup-image/Restorehealth要关闭“管理员:命令提示符”窗口,请键入Exit,然后按Enter。再次运行Windows更新。......