GESP认证C++编程真题解析 | 202312 五级

news/2026/1/19 17:27:56/文章来源:https://www.cnblogs.com/guolianggsta/p/19502997

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

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

适合人群:

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

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


编程题

B3929 小杨的幸运数

【题目来源】

洛谷:[B3929 GESP202312 五级] 小杨的幸运数 - 洛谷

【题目描述】

小杨认为,所有大于等于 \(a\) 的完全平方数都是他的超级幸运数。

小杨还认为,所有超级幸运数的倍数都是他的幸运数。自然地,小杨的所有超级幸运数也都是幸运数。

对于一个非幸运数,小杨规定,可以将它一直 \(+1\),直到它变成一个幸运数。我们把这个过程叫做幸运化。例如,如果 \(a=4\),那么 \(4\) 是最小的幸运数,而 \(1\) 不是,但我们可以连续对 \(1\)\(3\)\(+1\) 操作,使其变为 \(4\),所以我们可以说, \(1\) 幸运化后的结果是 \(4\)

现在,小杨给出 \(N\) 个数,请你首先判断它们是不是幸运数;接着,对于非幸运数,请你将它们幸运化。

【输入】

第一行 \(2\) 个正整数 \(a, N\)

接下来 \(N\) 行,每行一个正整数 \(x\) ,表示需要判断(幸运化)的数。

【输出】

输出 \(N\) 行,对于每个给定的 \(x\) ,如果它是幸运数,请输出 lucky,否则请输出将其幸运化后的结果。

【输入样例】

2 4
1 
4
5
9

【输出样例】

4
lucky
8
lucky

【算法标签】

《洛谷 B3929 小杨的幸运数》 #二分# #素数判断,质数,筛法# #GESP# #2023#

【代码详解】

#include <bits/stdc++.h>
using namespace std;const int N = 1100005;  // 最大范围
int a, n;               // a: 判断是否为完全平方数, n: 查询次数
int b[N];              // 存储每个数的结果int main()
{// 输入a和ncin >> a >> n;// 计算sqrt(a)的上取整int x = sqrt(a);if (x * x != a){x++;}// 预处理:标记所有完全平方数的倍数// 从x开始,遍历所有可能的平方数for (int i = x; i * i <= 1100000; i++){// 将i*i的所有倍数标记为自身for (int j = i * i; j <= 1100000; j += i * i){b[j] = j;  // 标记j是某个平方数的倍数}}// 预处理:填充未标记的位置// 从后向前扫描,记录最近遇到的正数x = 0;  // 这里重新使用x作为临时变量for (int i = 1100000; i >= 0; i--){if (b[i]){x = b[i];  // 更新最近遇到的标记值}else{b[i] = x;  // 填充为最近的标记值}}// 调试输出,查看b数组前20个值// for (int i=1; i<=20; i++)//     cout << b[i] << " ";// cout << endl;// 处理n个查询for (int i = 1; i <= n; i++){int t;cin >> t;  // 输入查询的数if (b[t] == t){cout << "lucky" << endl;  // 是完全平方数的倍数}else{cout << b[t] << endl;  // 输出最近的大于等于t的标记值}}return 0;
}

【运行结果】

2 4
1
4
4
lucky
5
8
9
lucky

B3930 烹饪问题

【题目来源】

洛谷:[B3930 GESP202312 五级] 烹饪问题 - 洛谷

【题目描述】

\(N\) 种食材,编号从 \(1\)\(N\),其中第 \(i\) 种食材的美味度为 \(a_i\)

不同食材之间的组合可能产生奇妙的化学反应。具体来说,如果两种食材的美味度分别为 \(x\)\(y\) ,那么它们的契合度为 $x\ \text{and}\ y $。

其中,\(\text{and}\) 运算为按位与运算,需要先将两个运算数转换为二进制,然后在高位补足 ,再逐位进行与运算。例如,\(12\)\(6\) 的二进制表示分别为 \(1100\)\(0110\) ,将它们逐位进行与运算,得到 \(0100\) ,转换为十进制得到 4,因此 \(12\ \text{and}\ 6 = 4\)在 C++ 或 Python 中,可以直接使用 & 运算符表示与运算。

现在,请你找到契合度最高的两种食材,并输出它们的契合度。

【输入】

第一行一个整数 \(N\),表示食材的种数。

接下来一行 \(N\) 个用空格隔开的整数,依次为 \(a_1,\cdots,a_N\),表示各种食材的美味度。

【输出】

输出一行一个整数,表示最高的契合度。

【输入样例】

3
1 2 3

【输出样例】

2

【算法标签】

《洛谷 B3930 烹饪问题》 #贪心# #位运算# #GESP# #2023#

【代码详解】

// 40分版本
#include <bits/stdc++.h>
using namespace std;const int N = 1000005;  // 最大数组长度
int n;                  // 数组元素个数
int maxn = -1e9;        // 最大与运算结果,初始化为极小值
int a[N];               // 存储输入数组int main()
{// 输入数组大小cin >> n;// 输入数组元素for (int i = 1; i <= n; i++){cin >> a[i];}// 暴力枚举所有不相同的元素对for (int i = 1; i <= n; i++){for (int j = 1; j <= n; j++){// 跳过相同的元素对if (i == j){continue;}// 计算按位与并更新最大值maxn = max(maxn, a[i] & a[j]);}}// 输出最大的按位与结果cout << maxn << endl;return 0;
}
#include <bits/stdc++.h>
using namespace std;const int N = 1000005;  // 最大数组长度
int n;                  // 数组元素个数
int maxn = -1e9;        // 最大与运算结果,初始化为极小值
int a[N];               // 存储输入数组int main()
{// 输入数组大小cin >> n;// 输入数组元素for (int i = 1; i <= n; i++){cin >> a[i];}// 将数组从大到小排序sort(a + 1, a + n + 1, greater<int>());// 优化后的双重循环for (int i = 1; i <= n; i++){// 剪枝:如果当前元素已经小于等于当前最大值,跳过if (a[i] <= maxn){continue;}// 与后面的元素进行按位与运算for (int j = i + 1; j <= n; j++){maxn = max(maxn, a[i] & a[j]);}}// 输出最大的按位与结果cout << maxn << endl;return 0;
}

【运行结果】

3
1 2 3
2

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

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

相关文章

str与[u8]区别

在Rust 开发实践中,理解 &str 与 &[u8] 的关系是处理高性能文本和网络协议的基础。 这两者本质上都是切片(Slice),即“指针 + 长度”,但它们在语义、验证和用途上有着严格的区别。 1. 核心区别对比表特性…

基于Python的外卖配送分析与可视化系统的设计与实现

随着大数据技术加速发展&#xff0c;数据分析与可视化成为各行业数字化转型的核心手段。外卖行业作为互联网经济支柱&#xff0c;积累了海量订单、用户行为及配送数据&#xff0c;如何高效分析并提升用户体验亟待解决。本研究聚焦“基于Python的外卖配送分析与可视化系统”&…

seaweedFs集群部署

SeaweedFS 分布式文件系统:全面解析与高可用部署指南 1. SeaweedFS 简介与核心优势 SeaweedFS(又称草鱼文件系统)是一款用 Go 语言开发的高性能、高可扩展的​分布式文件系统​,专为海量小文件存储而优化。它最初的…

2026年全屋定制品牌权威推荐榜:整体家居/定制柜类/环保定制/高端整装等源头实力厂家综合评估

诗尼曼在全国近2000家经销服务网点中,有一套高效供应链正在运行,从广州番禺的智能工厂到临沂、荆门的生产基地,他们构建起一个响应快速的全屋定制生态。近几年,诗尼曼展示的高净抗菌板连续三年通过育儿环境优标认证…

LangBot:五分钟打造你的专属IM机器人,支持10+聊天平台!

LangBot:五分钟打造你的专属IM机器人,支持10+聊天平台! LangBot 到底是什么? 简单说,它就是... LangBot 是一个开源的大语言模型原生即时通信机器人开发平台,简单来说,它就像一个“万能遥控器”,让你能够轻松连…

油品分析仪生产厂家,谁家的技术先进/实力强? - 品牌推荐大师

在石油化工及相关领域,油品分析仪作为保障产品质量、优化生产工艺的关键设备,其技术先进性与生产厂家的综合实力直接影响着行业的发展水平。在众多生产厂家中,北京杜克泰克科技有限公司凭借其卓越的技术和强大的实力…

实用指南:光谱共焦传感器 LTC2400/LTC4000F 对手机镜头镜片的圆角倒角厚度测量检测

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

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

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

2026 年靠谱的一键闪测仪厂家推荐及选购指南 - 工业仪器权威说

在制造业蓬勃发展的当下,工业生产中的测量检测环节愈发关键。一键闪测仪作为这一环节的重要工具,其性能直接影响着产品质量和生产效率。一台靠谱的一键闪测仪能够为企业节省大量时间和成本,提升生产的精准度和稳定性…

迪赛福闪测仪:高效测量与精度稳定,助力制造升级 - 工业仪器权威说

在工业测量领域,闪测仪(又称一键式影像测量仪)正以其高效、精准的检测能力,成为现代智能制造的关键装备。随着制造业向高精度、高效率方向发展,对测量设备的要求也日益严苛。迪赛福工业互联(深圳)有限公司,作为…

我花了 2 周用 cursor 把 Couple AI 重新做了一遍:从“能用”到“值得用”

今天想真诚地和大家分享一件事: 我把 Couple AI 彻底重做了,并正式发布了 1.0 版本。 老版本其实是一个“快速验证”的原型,我们做得很快,但也很清楚它有很多不足: 生成效果不稳定、体验不够顺畅、对“情侣记忆”…

32432423

您好: 1.首先,非常抱歉,我猜,您应该知道,我确实长时间在一个地方发不利于您的信息,非常恶劣的信息。非常抱歉,非常对不起。之前得罪您的次数比较多,您可以回复的骂我,侮辱我,哪怕打我都行,或者我给您当面道…

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

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

详细介绍:安全体检 | 服务器的终极卫士

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

解锁NanoBananaPro的6大应用场景:表情包、商品图、总结纲要、产品logo、漫画原创、文字转图片……

正文共&#xff1a; 2254字 16图 预计阅读时间&#xff1a; 6分钟 已经离不开NanoBananaPro了 之前的AI画图工具以GPT-4o为主力&#xff0c;包括画一些logo、宣传海报、帮客户定做图片&#xff0c;以及做的一个图像风格转绘工具&#xff1a;一粒图像室。 8月份NanoBanana之后…

2025年广佛双主轴加工中心用户推荐榜单出炉,46排刀机/Y轴/数控4+4/双主轴双刀塔/刀塔车床/数控车床/排刀机双主轴品牌选哪家 - 品牌推荐师

在制造业向高端化、智能化转型的浪潮中,双主轴加工中心以其高效率、高精度的复合加工能力,已成为精密零部件制造领域的核心装备。尤其在制造业重镇广佛地区,旺盛的市场需求催生了众多机床品牌,但设备性能的稳定性、…

2026年铜锌分离炉深度选型报告:谁是高效冶金与环保回收的“破局者” - 电炉老饕

有色金属回收与精炼行业正经历着一场前所未有的技术变革。 随着原材料价格的波动与环保政策的红线收紧,如何从黄铜废料、镀锌铜边角料及各类合金渣中实现“铜归铜,锌归锌”的高效分离,已成为冶金企业降本增效的生命…

leetcode 1895. 最大的幻方 中等

一个 k x k 的 幻方 指的是一个 k x k 填满整数的方格阵&#xff0c;且每一行、每一列以及两条对角线的和 全部相等 。幻方中的整数 不需要互不相同 。显然&#xff0c;每个 1 x 1 的方格都是一个幻方。给你一个 m x n 的整数矩阵 grid &#xff0c;请你返回矩阵中 最大幻方 的…

计算机毕业设计案例】基于springboot的成人小饭桌预约下单配送微信小程序(程序+文档+讲解+定制)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

你的SCI论文总被拒?中国学生最易踩的6个坑

在科研领域&#xff0c;发表SCI论文是众多中国学生追求的目标&#xff0c;它代表着学术水平和科研能力得到国际认可。然而&#xff0c;不少学生在投稿过程中屡屡受挫&#xff0c;论文被拒的情况时有发生。下面就为大家详细剖析中国学生最容易踩到的6个“坑”。 坑一&#xff1a…