news 2026/6/23 0:16:10

GESP认证C++编程真题解析 | B3925 [GESP202312 三级] 小猫分鱼

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
GESP认证C++编程真题解析 | B3925 [GESP202312 三级] 小猫分鱼

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

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

适合人群:

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

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


【题目来源】

洛谷:[B3925 GESP202312 三级] 小猫分鱼 - 洛谷

【题目描述】

海滩上有一堆鱼,N NN只小猫来分。第一只小猫把这堆鱼平均分为N NN份,多了i < N i<Ni<N个,这只小猫把多的i ii个扔入海中,拿走了一份。第二只小猫接着把剩下的鱼平均分成N NN份,又多了i ii个,小猫同样把多的i ii个扔入海中,拿走了一份。第三、第四、……,第N NN只小猫仍是最终剩下的鱼分成N NN份,扔掉多了的i ii个,并拿走一份。

编写程序,输入小猫的数量N NN以及每次扔到海里的鱼的数量i ii,输出海滩上最少的鱼数,使得每只小猫都可吃到鱼。

例如:两只小猫来分鱼N = 2 N=2N=2,每次扔掉鱼的数量为i = 1 i=1i=1,为了每只小猫都可吃到鱼,可令第二只小猫需要拿走1 11条鱼,则此时待分配的有3 33条鱼。第一只小猫待分配的鱼有3 × 2 + 1 = 7 3\times 2+1=73×2+1=7条。

【输入】

总共2 22行。第一行一个整数N NN,第二行一个整数i ii

保证0 < N < 10 0<N<100<N<10i < N i<Ni<N

【输出】

一行一个整数,表示满足要求的海滩上最少的鱼数。

【输入样例】

2 1

【输出样例】

7

【算法标签】

《洛谷 B3925 小猫分鱼》 #GESP# #2023#

【代码详解】

#include<bits/stdc++.h>usingnamespacestd;intn,i;// n: 总人数, i: 最后一个人的编号/** * 检查给定的s(分给第一个人的数量)是否有效 * 并计算最后剩下的人数 * @param s 分给第一个人的数量 * @return 如果有效返回最后人数,否则返回0 */intcheck(ints){// 第一次分配后剩下的人数intk=s*n+i;// 模拟n-1次分配(因为第一次已经分配了)for(intx=2;x<=n;x++){// 检查是否能被n-1整除if(k%(n-1)!=0){return0;// 不能整除,无效}// 更新k为下一次分配前的人数k=k/(n-1)*n+i;}// 返回最后剩下的人数returnk;}intmain(){// 输入总人数n和最后一个人的编号icin>>n>>i;// 特殊情况:n=1if(n==1){cout<<1<<endl;// 只有一个人,分给自己return0;}// 从s=1开始尝试ints=1;while(true){intans=check(s);if(ans>0)// 找到有效解{cout<<ans<<endl;break;}s++;// 尝试下一个s}return0;}

【运行结果】

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

WinUI TabView控件:打造现代化多标签应用界面

WinUI TabView控件&#xff1a;打造现代化多标签应用界面 【免费下载链接】microsoft-ui-xaml Windows UI Library: the latest Windows 10 native controls and Fluent styles for your applications 项目地址: https://gitcode.com/GitHub_Trending/mi/microsoft-ui-xaml …

作者头像 李华
网站建设 2026/6/23 18:33:25

Qlib Alpha158数据集:掌握158个量化因子构建稳健投资策略

Qlib Alpha158数据集&#xff1a;掌握158个量化因子构建稳健投资策略 【免费下载链接】qlib Qlib 是一个面向人工智能的量化投资平台&#xff0c;其目标是通过在量化投资中运用AI技术来发掘潜力、赋能研究并创造价值&#xff0c;从探索投资策略到实现产品化部署。该平台支持多种…

作者头像 李华
网站建设 2026/6/23 15:39:23

Android UI动画框架的技术演进与未来趋势

Android UI动画框架的技术演进与未来趋势 【免费下载链接】LTMorphingLabel [EXPERIMENTAL] Graceful morphing effects for UILabel written in Swift. 项目地址: https://gitcode.com/gh_mirrors/lt/LTMorphingLabel 数据显示&#xff0c;移动应用界面中动画效果已成为…

作者头像 李华
网站建设 2026/6/23 17:32:12

Web流媒体播放器的多协议适配技术:从协议碎片化到统一解决方案

Web流媒体播放器的多协议适配技术&#xff1a;从协议碎片化到统一解决方案 【免费下载链接】jessibuca Jessibuca是一款开源的纯H5直播流播放器 项目地址: https://gitcode.com/GitHub_Trending/je/jessibuca 你是否曾遇到过这样的困境&#xff1f;当你准备在网页上播放…

作者头像 李华