news 2025/12/31 10:46:27

GESP认证C++编程真题解析 | P10376 [GESP202403 六级] 游戏

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
GESP认证C++编程真题解析 | P10376 [GESP202403 六级] 游戏

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

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

适合人群:

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

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


【题目来源】

洛谷:[P10376 GESP202403 六级] 游戏 - 洛谷

【题目描述】

你有四个正整数n , a , b , c n,a,b,cn,a,b,c,并准备用它们玩一个简单的小游戏。

在一轮游戏操作中,你可以选择将n nn减去a aa,或是将n nn减去b bb。游戏将会进行多轮操作,直到当n ≤ c n \leq cnc时游戏结束。

你想知道游戏结束时有多少种不同的游戏操作序列。两种游戏操作序列不同,当且仅当游戏操作轮数不同,或是某一轮游戏操作中,一种操作序列选择将n nn减去a aa,而另一种操作序列选择将n nn减去b bb。如果a = b a=ba=b,也认为将n nn减去a aa与将n nn减去b bb是不同的操作。

由于答案可能很大,你只需要求出答案对10 9 + 7 10^9 + 7109+7取模的结果。

【输入】

一行四个整数n , a , b , c n,a,b,cn,a,b,c

【输出】

输出一行一个整数表示答案。

【输入样例】

1 1 1 1

【输出样例】

1

【算法标签】

《洛谷 P10376 游戏》 #动态规划DP# #深度优先搜索DFS# #记忆化搜索# #GESP# #2024#

【代码详解】

#include<bits/stdc++.h>usingnamespacestd;constintmod=1e9+7;// 模数constintN=2e5+5;// 最大范围intn,a,b,c,ans;// n: 初始值, a,b: 减少值, c: 目标范围上限, ans: 答案intf[N<<1];// DP数组,大小为2N,通过+N来避免负数下标intmain(){// 输入参数cin>>n>>a>>b>>c;// 初始化:从n开始有1种方案f[n+N]=1;// 为了防止下标为负数,统一加N偏移量// 从n向下递推到c+1for(inti=n;i>c;i--){// 转移方程1:从i可以通过减a到达i-af[i-a+N]=(f[i-a+N]+f[i+N])%mod;// f[i-a] += f[i]// 转移方程2:从i可以通过减b到达i-bf[i-b+N]=(f[i-b+N]+f[i+N])%mod;// f[i-b] += f[i]}// 统计f[0]到f[c]的所有方案数之和for(inti=0;i<=N+c;i++)// 注意:这里应该是i <= c,但代码中有偏移{// 实际上,由于偏移N,f[i]对应原f[i-N]// 循环中的i是实际下标,需要减去N// 但代码直接累加f[i],这意味着i的范围是0到N+c// 这似乎有问题ans=(ans+f[i])%mod;}// 输出结果cout<<ans<<endl;return0;}

【运行结果】

114 51 4 1 176
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/25 17:43:31

浏览器插件Open-AutoGLM性能优化秘籍,让AI响应速度提升5倍,

第一章&#xff1a;浏览器插件Open-AutoGLM web Open-AutoGLM web 是一款专为提升网页内容理解与自动化交互设计的浏览器插件&#xff0c;集成大语言模型能力&#xff0c;支持在任意网页中一键调用 GLM 模型进行文本摘要、翻译、问答等操作。该插件通过轻量级前端界面与后端 AP…

作者头像 李华
网站建设 2025/12/25 16:30:19

终极XPath定位神器:xpath-helper-plus完全使用指南

终极XPath定位神器&#xff1a;xpath-helper-plus完全使用指南 【免费下载链接】xpath-helper-plus 项目地址: https://gitcode.com/gh_mirrors/xp/xpath-helper-plus 在前端开发和自动化测试中&#xff0c;精准定位网页元素是每个开发者必须掌握的核心技能。xpath-hel…

作者头像 李华
网站建设 2025/12/26 7:14:15

GPT-SoVITS语音合成在短视频配音中的爆发式应用

GPT-SoVITS语音合成在短视频配音中的爆发式应用 如今&#xff0c;一条爆款短视频的诞生早已不再依赖昂贵的专业团队。越来越多的个体创作者只需一台电脑、一段录音和几句脚本&#xff0c;就能让AI“替自己说话”——用高度拟真的声音完成整条视频的旁白解说。这背后&#xff0c…

作者头像 李华
网站建设 2025/12/25 23:31:27

如何评估GPT-SoVITS生成语音的质量?主观+客观双维度

如何评估GPT-SoVITS生成语音的质量&#xff1f;主观客观双维度 在AI语音技术飞速发展的今天&#xff0c;我们已经可以仅用一分钟录音就“复制”一个人的声音。这种能力听起来像科幻电影的情节&#xff0c;却已在开源社区成为现实——GPT-SoVITS 正是这一浪潮中的代表性项目。 它…

作者头像 李华