【有料c++题目周刊 | 第四期】贝克街神探
文章目录
- 第一题:贝克街解码
- 题目描述
- 输入格式
- 输出格式
- 数据范围
- 输入样例
- 输出样例
- 解题思路&C++题解
- 第二题:福尔摩斯的案件调查
- 题目描述
- 输入样例
- 输出样例
- 解题思路&C++题解
第一题:贝克街解码
题目描述
身处贝克街221B福尔摩斯接到了一张用于破解密码的手稿,但是这张手稿上的密码长度非常的长,而且手稿上写着密码只包含小写字母。
福尔摩斯知道密码有一个很重要的性质:密码中每个字母出现的次数都是偶数。
现在,福尔摩斯想要你帮他写一个程序来破解密码。程序需要输入一个字符串,判断这个字符串是否可能是密码。
输入格式
输入第一行包含一个整数 n,表示密码的长度。
接下来一行包含一个字符串 s,表示给定的字符串。
输出格式
如果 s 可能是密码,输出 YES,否则输出 NO。
数据范围
1≤n≤1000
输入样例
6
abcdef
输出样例
YES
解题思路&C++题解
C++ 代码如下:
#include <iostream>
#include <cstring>using namespace std;const int N = 1010;char s[N]; // 存储给定的字符串
int cnt[26]; // 存储 26 个小写字母出现的次数int main()
{int n;scanf("%d%s", &n, s);// 统计 26 个小写字母出现的次数for (int i = 0; i < n; i ++ ) cnt[s[i] - 'a'] ++ ;// 判断密码是否合法bool flag = true;for (int i = 0; i < 26; i ++ )if (cnt[i] % 2 == 1) flag = false; // 如果有字母出现次数为奇数,则密码不合法printf(flag ? "YES\n" : "NO\n");return 0;
}
上面的代码使用了一个 cnt 数组来统计 26 个小写字母出现的次数,然后循环遍历 cnt 数组,如果有字母出现次数为奇数,则密码不合法,否则密码合法。
第二题:福尔摩斯的案件调查
题目描述
请完成一个程序,模拟福尔摩斯在解决一个案件时使用的过程。福尔摩斯接到了警察局的通知,案件的线索包括多个字符串,每个字符串都可能包含关键信息。福尔摩斯需要将这些线索按照字典序排序,然后将它们放入一个三维数组中,并使用多个变量记录关键信息的出现次数。
具体来说,你的程序需要完成以下任务:
读入多个字符串,将它们存储在一个字符串数组中。
将字符串数组按照字典序排序。
将排序后的字符串数组放入一个三维数组中,并记录每个字符串中每种字符的出现次数。
输出三维数组和记录的变量值。
你可以使用任何合法的 c++ 代码来完成这道题,但你应该尽量使用最简单和最高效的方法。
输入样例
4
clue1
clue2
clue3
clue4
输出样例
clue1
clue2
clue3
clue4A: 1
B: 0
C: 1
D: 0
E: 0
F: 0
G: 0
H: 0
I: 1
J: 0
解题思路&C++题解
首先,我们需要读入多个字符串,并将它们存储在一个字符串数组中。这可以使用 cin 语句来实现。
然后,我们需要将字符串数组按照字典序排序。这可以使用 sort 函数来实现。
接下来,我们需要将排序后的字符串数组放入一个三维数组中,并记录每个字符串中每种字符的出现次数。这可以使用三重循环来实现。
最后,我们需要输出三维数组和记录的变量值。这可以使用 cout 语句来实现。
下面是一个参考实现:
#include <iostream>
#include <string>
#include <algorithm>using namespace std;const int N = 100;int main() {int n;cin >> n;string clues[N];for (int i = 0; i < n; i++) {cin >> clues[i];}sort(clues, clues + n);int counts[N][26];for (int i = 0; i < n; i++) {for (int j = 0; j < 26; j++) {counts[i][j] = 0;}for (int j = 0; j < clues[i].size(); j++) {counts[i][clues[i][j] - 'A']++;}}for (int i = 0; i < n; i++) {cout << clues[i] << endl;for (int j = 0; j < 26; j++) {cout << (char)('A' + j) << ": " << counts[i][j] << endl;}}return 0;
}
【有料c++题目周刊 | 第四期】贝克街神探相关推荐
- 【有料c++题目周刊 | 第六期】The Godfather
文章目录 第一题:<教父>家族关系维护 题目描述 输入格式 输出格式 输入样例 输出样例 解题思路&C++题解 算法1 算法2 算法3 算法4 算法5 算法6 算法7 第二题:柯里 ...
- 科技周刊第四期:我为什么要写这个专栏
这里记录每周值得分享的东西,每周五发布. 封面图 2020年3月9日在美国国会大厦后面升起的超级月亮.(出处) 本周话题:我为什么要写这个专栏 有不少朋友问我,为什么要写这个专栏?浪费时间,又非什么知 ...
- 科技周刊第六期:接近本质的东西才会长远
这里记录每周值得分享的东西,每周五发布. 封面图 中国西南西藏自治区山南市扎南县的雅鲁藏布江(出处) 本周话题:接近本质的东西才会长远 我想说三个现象: 1.为什么很多明星能够一直红下去?而有的明星只 ...
- 科技周刊第五期:科学技术在发展中的作用
这里记录每周值得分享的东西,每周五发布. 从本周开始,该系列加入「工具与软件」和「趣味网站」两个版块. 封面图 德国慕尼黑,政府部门为联系新冠感染者的团队设置了工作站.中心位置将部署500名员工,以便 ...
- 【码云周刊第 10 期】放码过来,四个男人的带头冲锋!!(内附 PPT 下载链接)...
为什么80%的码农都做不了架构师?>>> 一周热门资讯回顾 码云全面改版:新界面新态度,更一致的体验 DuangDuangDuang!码云项目的 Readme.md 特殊技能 ...
- 新年新气象!新益求新的前端周刊(第十四期)
前端周刊是一份专为前端从业人员,以及对前端.设计领域感兴趣的朋友们打造的技术周刊.程小狮会精选出前端.设计领域近期相关的资讯.热点以及技术干货,与大家一同分享. 前端周刊专注于前端领域技术分享.希望这 ...
- 【码云周刊第 61 期】四款开源项目教你玩转微信游戏
为什么80%的码农都做不了架构师?>>> 码云项目推荐 前段时间小编的朋友圈几乎被一款微信小游戏霸屏,很多玩过的朋友戏称"根本停不下来",没错就是" ...
- 拿不到offer全额退款 | 第四期人工智能 NLP / CV 课 培训招生
人工智能与自然语言处理/计算机视觉课培训招生 Artificial Intelligence ForNLP/CV Courses 真实企业级项目驱动 找工作拿不到offer全额退款 GitHub年度活 ...
- 【码云周刊第 3 期】来自国内开发者的实战项目,开源让通讯从未如此简单!...
为什么80%的码农都做不了架构师?>>> 类型:即时通讯 "小时候,乡愁是一枚小小的邮票,我在这头,母亲在那头-- " 春节将至,思乡心切,小一情不自禁的想 ...
最新文章
- 斯坦福全球AI报告:清华AI课程人数增16倍,人才需求暴增 35 倍
- STC单片机高速下载电路改进
- java网页制作教程_JavaWeb程序设计任务教程
- 一些影响SCI论文接收的技术性问题盘点
- 吹毛求疵C#(1)明确赋值检查缺陷
- 程序员遇到bug时常见的30种反应
- .NET开发 正则表达式中的 Bug
- HTML5 WebRTC API无需网络获取本地IP
- jquery源码解析:jQuery延迟对象Deferred(工具方法)详解1
- 傅里叶变换中的假频**
- 超简单!一部手机就能提取视频中的语音转换成文字
- 注塑机摆放间距多少合适_注塑模具加工须知(1):必须注意注塑机注塑参数“拉杆间距”...
- Hadoop报错java.lang.UnsupportedClassVersionError: com/sjt/mr/myjob/MyJob : Unsupported major
- MSP与PGMP的关联性与区别
- android 11.0 12.0设置app为默认浏览器
- Excel2003工作簿密码和工作表保护的加密和解密
- 贪心:Fence Repair、Saruman's Army
- 【安全牛学习笔记】密码嗅探
- pytorch绘制并显示loss曲线和acc曲线,LeNet5识别图像准确率
- 天猫店铺基础知识分享
热门文章
- html简单的任务管理系统实现,用Javascript实现Windows任务管理器的代码
- C++程序设计:考研路茫茫——早起看书
- 关于第一型曲面积分的再思考
- phpmailer 使用
- 29Python时间序列分析(美国消费者信心指数及维基百科点击量EDA,含实例数据)
- 基于Java+SSM+Vue农家乐管理系统(住宿-美食-活动)设计与实现
- python必背100源代码-100行Python代码实现一款高精度免费OCR工具
- 【3Dsmax】入门
- 淘宝铸造亿级流量的首页?十年一剑
- 1.4 面向对象编程中级 对象的继承与super关键字-跟着韩老师学JavaSE