news 2026/8/1 8:41:47

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/7/31 21:18:40

Nunu:快速构建高性能Go应用程序的终极CLI工具

Nunu&#xff1a;快速构建高性能Go应用程序的终极CLI工具 【免费下载链接】nunu A CLI tool for building Go applications. 项目地址: https://gitcode.com/GitHub_Trending/nu/nunu 在当今快节奏的软件开发环境中&#xff0c;Go语言以其出色的性能和并发特性赢得了众多…

作者头像 李华
网站建设 2026/8/1 3:48:02

AirConnect终极配置指南:3步实现设备互联

AirConnect终极配置指南&#xff1a;3步实现设备互联 【免费下载链接】AirConnect Use AirPlay to stream to UPnP/Sonos & Chromecast devices 项目地址: https://gitcode.com/gh_mirrors/ai/AirConnect 想要让家中的Chromecast和UPnP设备&#xff08;如Sonos&…

作者头像 李华
网站建设 2026/7/30 4:15:21

Vue Admin Better:解密10万+项目背后的权限架构设计哲学

Vue Admin Better&#xff1a;解密10万项目背后的权限架构设计哲学 【免费下载链接】vue-admin-better &#x1f389; vue admin,vue3 admin,vue3.0 admin,vue后台管理,vue-admin,vue3.0-admin,admin,vue-admin,vue-element-admin,ant-design,vab admin pro,vab admin plus,vue…

作者头像 李华
网站建设 2026/7/31 10:21:38

Nunu CLI工具:快速构建Go应用的终极指南

Nunu CLI工具&#xff1a;快速构建Go应用的终极指南 【免费下载链接】nunu A CLI tool for building Go applications. 项目地址: https://gitcode.com/GitHub_Trending/nu/nunu Nunu是一个专为Go开发者设计的CLI工具&#xff0c;它通过封装流行的Go库和提供标准化的项目…

作者头像 李华
网站建设 2026/7/31 21:55:56

3步解锁Chrome浏览器HEVC硬件解码功能:提升4K视频播放体验

3步解锁Chrome浏览器HEVC硬件解码功能&#xff1a;提升4K视频播放体验 【免费下载链接】enable-chromium-hevc-hardware-decoding A guide that teach you enable hardware HEVC decoding & encoding for Chrome / Edge, or build a custom version of Chromium / Electron…

作者头像 李华