GESP认证C++编程真题解析 | 202412 四级

news/2026/1/18 8:11:20/文章来源:https://www.cnblogs.com/guolianggsta/p/19497737

​欢迎大家订阅我的专栏:算法题解:C++与Python实现!
本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战!

专栏特色
1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的代码实现与详细指导,帮助您夯实算法基础。
2.系统化学习路径:按照算法类别和难度分级,从基础到进阶,循序渐进,帮助您全面提升编程能力与算法思维。

适合人群:

  • 准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生
  • 希望系统学习C++/Python编程的初学者
  • 想要提升算法与编程能力的编程爱好者

附上汇总帖:GESP认证C++编程真题解析 | 汇总


编程题

B4068 Recamán

【题目来源】

洛谷:B4068 [GESP202412 四级] Recamán - 洛谷

【题目描述】

小杨最近发现了有趣的 Recamán 数列,这个数列是这样生成的:

  • 数列的第一项 \(a_1\)\(1\)
  • 如果 \(a_{k−1}−k\) 是正整数并且没有在数列中出现过,那么数列的第 \(k\)\(a_k\)\(a_{k−1}−k\),否则为 \(a_{k−1}+k\)

小杨想知道 Recamán 数列的前 \(n\) 项从小到大排序后的结果。手动计算非常困难,小杨希望你能帮他解决这个问题。

【输入】

第一行,一个正整数 \(n\)

【输出】

一行,\(n\) 个空格分隔的整数,表示 Recamán 数列的前 \(n\) 项从小到大排序后的结果。

【输入样例】

5

【输出样例】

1 2 3 6 7

【算法标签】

《洛谷 B4068 Recamán》 #GESP# #2024#

【代码详解】

#include <bits/stdc++.h>
using namespace std;map<int, int> mp;  // 用于记录已经生成的数值
const int N = 3005;  // 定义数组的最大大小
int n;  // 输入的n值
int a[N];  // 存储生成的序列int main() {cin >> n;  // 输入n// 初始化序列的第一个元素为1,并记录到map中a[1] = 1;mp[1] = 1;// 生成序列的第2到第n个元素for (int i = 2; i <= n; i++) {// 尝试用前一个元素减去当前索引iif (a[i - 1] - i > 0 && mp[a[i - 1] - i] == 0) {a[i] = a[i - 1] - i;mp[a[i]] = 1;  // 标记该值已存在} else {// 如果不能减,则用前一个元素加上当前索引ia[i] = a[i - 1] + i;mp[a[i]] = 1;  // 标记该值已存在}}// 对生成的序列进行排序sort(a + 1, a + n + 1);// 输出排序后的序列for (int i = 1; i <= n; i++) {cout << a[i] << " ";}cout << endl;return 0;
}

【运行结果】

5
1 2 3 6 7 

B4069 字符排序

【题目来源】

洛谷:[B4069 GESP202412 四级] 字符排序 - 洛谷

【题目描述】

小杨有 \(n\) 个仅包含小写字母的字符串 \(s_1,s_2,…,s_n\),小杨想将这些字符串按一定顺序排列后拼接到一起构成字符串 \(t\)。小杨希望最后构成的字符串 \(t\) 满足:

  • 假设 \(t_i\) 为字符串 \(t\) 的第 \(i\) 个字符,对于所有的 \(j<i\) 均有 \(t_j≤t_i\)。两个字符的大小关系与其在字母表中的顺序一致,例如 \(e<g<p<s\)

小杨想知道是否存在满足条件的字符串排列顺序。

【输入】

第一行包含一个正整数 \(T\),代表测试数据组数。

对于每组测试数据,第一行包含一个正整数 \(n\),含义如题面所示。

之后 \(n\) 行,每行包含一个字符串 \(s_i\)

【输出】

对于每组测试数据,如果存在满足条件的排列顺序,输出(一行一个)\(1\),否则输出(一行一个) \(0\)

【输入样例】

3
3
aa
ac
de
2
aac
bc
1
gesp

【输出样例】

1
0
0

【算法标签】

《洛谷 B4069 字符排序》 #GESP# #2024#

【代码详解】

#include <bits/stdc++.h>
using namespace std;const int N = 105;  // 定义最大字符串数量
int T;              // 测试用例的数量
string s[N];        // 存储输入的字符串
int f[N * 10];      // 动态规划数组,用于计算最长非递减子序列int main() {cin >> T;  // 输入测试用例数量while (T--) {  // 处理每个测试用例int n;cin >> n;  // 输入字符串数量// 输入所有字符串for (int i = 1; i <= n; i++)cin >> s[i];// 对字符串进行字典序排序sort(s + 1, s + n + 1);// 将所有字符串拼接成一个长字符串str(前面加一个空格)string str = " ";for (int i = 1; i <= n; i++)str += s[i];int len = str.size() - 1;  // 获取有效字符长度(去掉开头的空格)memset(f, 0, sizeof f);  // 初始化动态规划数组// 计算最长非递减子序列for (int i = 1; i <= len; i++) {f[i] = 1;  // 初始化为1(至少包含当前字符)for (int j = 1; j < i; j++) {if (str[j] <= str[i])  // 如果前一个字符不大于当前字符f[i] = max(f[i], f[j] + 1);  // 更新最长子序列长度}}// 判断最长非递减子序列是否等于字符串长度if (f[len] == len)cout << "1" << endl;  // 是,说明整个字符串是非递减的elsecout << "0" << endl;  // 否,说明存在递减部分}return 0;
}

【运行结果】

3
3
aa
ac
de
1
2
aac
bc
0
1
gesp
0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1177347.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通义千问2.5-7B-Instruct保姆级教程:从零开始GPU部署实操

通义千问2.5-7B-Instruct保姆级教程&#xff1a;从零开始GPU部署实操 通义千问 2.5-7B-Instruct 是阿里 2024 年 9 月随 Qwen2.5 系列一同发布的 70 亿参数指令微调模型&#xff0c;定位“中等体量、全能型、可商用”。该模型在性能、效率和易用性之间实现了良好平衡&#xff…

网盘下载新革命:8大平台直链解析工具深度体验

网盘下载新革命&#xff1a;8大平台直链解析工具深度体验 【免费下载链接】Online-disk-direct-link-download-assistant 可以获取网盘文件真实下载地址。基于【网盘直链下载助手】修改&#xff08;改自6.1.4版本&#xff09; &#xff0c;自用&#xff0c;去推广&#xff0c;无…

GESP认证C++编程真题解析 | 202412 三级

​欢迎大家订阅我的专栏:算法题解:C++与Python实现! 本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战! 专栏特色 1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的…

MinerU 2.5代码实例:批量处理PDF文档的自动化脚本

MinerU 2.5代码实例&#xff1a;批量处理PDF文档的自动化脚本 1. 引言 1.1 业务场景描述 在科研、工程和内容管理领域&#xff0c;大量非结构化 PDF 文档需要被高效转化为可编辑、可检索的结构化格式。传统手动提取方式效率低下&#xff0c;尤其面对多栏排版、复杂表格、数学…

UDS 31服务ECU实现过程中的常见问题解析

UDS 31服务在ECU实现中的“坑”与实战避险指南你有没有遇到过这样的场景&#xff1f;产线刷写卡在预检环节&#xff0c;诊断仪发了31 01 XX XX后石沉大海&#xff1b;或者OTA升级前的环境检查刚启动&#xff0c;ECU直接复位重启&#xff1b;更严重的是&#xff0c;非授权设备误…

如何提升模糊图像清晰度?Super Resolution WebUI使用实操手册

如何提升模糊图像清晰度&#xff1f;Super Resolution WebUI使用实操手册 1. 引言 1.1 业务场景描述 在数字内容爆炸式增长的今天&#xff0c;大量历史图片、网络截图和用户上传图像存在分辨率低、细节模糊的问题。尤其在图像归档、内容再利用和视觉展示等场景中&#xff0c…

网盘直链下载助手:八大平台真实下载地址一键获取终极指南

网盘直链下载助手&#xff1a;八大平台真实下载地址一键获取终极指南 【免费下载链接】Online-disk-direct-link-download-assistant 可以获取网盘文件真实下载地址。基于【网盘直链下载助手】修改&#xff08;改自6.1.4版本&#xff09; &#xff0c;自用&#xff0c;去推广&a…

体验最新AI模型入门必看:云端GPU按需付费成主流

体验最新AI模型入门必看&#xff1a;云端GPU按需付费成主流 应届毕业生在求职时&#xff0c;常常会看到招聘要求上写着“熟悉YOLO等CV技术”。这确实是一个提升竞争力的好方向。但一想到要学习这些技术&#xff0c;很多人就犯了难&#xff1a;教程里动不动就说“需要配置GPU服…

虚拟手柄终极指南:如何用vJoy将键盘变成专业游戏控制器

虚拟手柄终极指南&#xff1a;如何用vJoy将键盘变成专业游戏控制器 【免费下载链接】vJoy Virtual Joystick 项目地址: https://gitcode.com/gh_mirrors/vj/vJoy 想要让普通键盘鼠标变身为专业游戏手柄吗&#xff1f;vJoy虚拟手柄项目正是你需要的完美解决方案。这个开源…

AI手势识别与追踪多语言支持:国际化部署方案

AI手势识别与追踪多语言支持&#xff1a;国际化部署方案 1. 技术背景与需求演进 随着人机交互技术的不断演进&#xff0c;AI驱动的手势识别正逐步从实验室走向消费级应用。在智能设备、虚拟现实、远程控制等场景中&#xff0c;用户期望通过自然的手势完成操作&#xff0c;而无…

从零实现干净系统状态:Vivado完整卸载方案

从零开始构建纯净开发环境&#xff1a;彻底卸载 Vivado 的实战指南 你有没有遇到过这样的情况&#xff1f; 刚下载好最新版 Vivado&#xff0c;满怀期待地点击安装&#xff0c;结果弹出一条令人窒息的提示&#xff1a;“检测到旧版本存在&#xff0c;无法继续安装。” 或者更…

IQuest-Coder-V1推理卡顿?显存优化部署实战案例解析

IQuest-Coder-V1推理卡顿&#xff1f;显存优化部署实战案例解析 1. 引言&#xff1a;大模型落地中的显存挑战 在当前代码大语言模型&#xff08;LLM&#xff09;快速演进的背景下&#xff0c;IQuest-Coder-V1-40B-Instruct 作为面向软件工程和竞技编程的新一代模型&#xff0…

BGE-Reranker-v2-m3优化方案:降低企业检索系统成本

BGE-Reranker-v2-m3优化方案&#xff1a;降低企业检索系统成本 1. 技术背景与行业痛点 在当前的检索增强生成&#xff08;RAG&#xff09;系统中&#xff0c;向量数据库通过语义相似度进行初步文档召回已成为标准流程。然而&#xff0c;仅依赖嵌入模型&#xff08;Embedding …

5分钟掌握网盘全速下载秘籍:免费工具助你告别龟速下载

5分钟掌握网盘全速下载秘籍&#xff1a;免费工具助你告别龟速下载 【免费下载链接】Online-disk-direct-link-download-assistant 可以获取网盘文件真实下载地址。基于【网盘直链下载助手】修改&#xff08;改自6.1.4版本&#xff09; &#xff0c;自用&#xff0c;去推广&…

深度学习实战:SpliceAI基因剪接变异预测完整解析

深度学习实战&#xff1a;SpliceAI基因剪接变异预测完整解析 【免费下载链接】SpliceAI 项目地址: https://gitcode.com/gh_mirrors/sp/SpliceAI 基因剪接是生物信息学中的重要研究领域&#xff0c;SpliceAI作为基于深度学习的剪接变异预测工具&#xff0c;为遗传变异功…

LabVIEW与Multisim共存时数据库权限冲突实战解析

LabVIEW与Multisim共存时数据库访问异常&#xff1f;一文讲透底层机制与实战解法你有没有遇到过这样的场景&#xff1a;早上刚打开电脑&#xff0c;准备用Multisim搭个电路仿真验证一下拓扑结构&#xff0c;结果双击图标后弹出一个红框提示&#xff1a;“无法访问数据库”——元…

GitHub加速插件:彻底解决代码下载慢的终极方案

GitHub加速插件&#xff1a;彻底解决代码下载慢的终极方案 【免费下载链接】Fast-GitHub 国内Github下载很慢&#xff0c;用上了这个插件后&#xff0c;下载速度嗖嗖嗖的~&#xff01; 项目地址: https://gitcode.com/gh_mirrors/fa/Fast-GitHub 对于国内开发者来说&…

2025网盘极速下载全攻略:8大平台免客户端直链解析方案

2025网盘极速下载全攻略&#xff1a;8大平台免客户端直链解析方案 【免费下载链接】Online-disk-direct-link-download-assistant 可以获取网盘文件真实下载地址。基于【网盘直链下载助手】修改&#xff08;改自6.1.4版本&#xff09; &#xff0c;自用&#xff0c;去推广&…

Qwen3-Embedding-4B应用研究:跨语言信息检索方案

Qwen3-Embedding-4B应用研究&#xff1a;跨语言信息检索方案 1. 引言 随着全球化信息流动的加速&#xff0c;跨语言信息检索&#xff08;Cross-lingual Information Retrieval, CLIR&#xff09;成为自然语言处理领域的重要挑战。传统方法依赖于机器翻译与单语检索系统的结合…