news 2026/5/28 3:59:03

CCF-GESP计算机学会等级考试2025年12月二级C++T1 环保能量球

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CCF-GESP计算机学会等级考试2025年12月二级C++T1 环保能量球

B4447 [GESP202512 二级] 环保能量球

题目描述

小杨最近在玩一个环保主题的游戏。在游戏中,小杨每行走 1 公里就可以获得 1 点“环保能量”。

为了激励玩家,游戏设置了“里程奖励”:小杨每行走xxx公里,游戏就会额外奖励 1 点能量。

现在已知小杨总共行走了nnn公里,请你帮他计算,他一共能获得多少点环保能量?

输入格式

第一行包含一个正整数ttt,代表测试数据组数。

对于每组测试数据:

  • 第一行包含一个正整数nnn,代表行走的公里数。
  • 第二行包含一个正整数xxx,代表奖励触发的间隔。

输出格式

对于每组测试数据,输出一个整数,代表小杨获得的环保能量总数。

输入输出样例 #1

输入 #1

3 5 2 10 3 2 5

输出 #1

7 13 2

说明/提示

样例解释

  • 对于第 1 组数据,n=5,x=2n = 5, x = 2n=5,x=2:小杨行走获得555点能量。此外,他在第222公里和第444公里时各获得111点额外奖励,总共5+2=75 + 2 = 75+2=7点。
  • 对于第 2 组数据,n=10,x=3n = 10, x = 3n=10,x=3:行走获得101010点。他在第333666999公里时各获得111点额外奖励,总共10+3=1310 + 3 = 1310+3=13点。
  • 对于第 3 组数据,n=2,x=5n = 2, x = 5n=2,x=5:行走获得222点。由于行走路程不足555公里,没有额外奖励,总共222点。

数据范围

对于全部数据,保证:1≤t≤1001 \leq t \leq 1001t1001≤n,x≤10001 \leq n, x \leq 10001n,x1000

一、题目分析

核心需求

计算小杨行走nnn公里后获得的总环保能量,总能量由两部分组成:

  1. 基础能量:每行走1公里获得1点,即基础能量值等于行走公里数nnn
  2. 额外奖励能量:每行走xxx公里奖励1点,额外奖励的数量为nnn中包含多少个完整的xxx(即nnn除以xxx的整数部分)。

关键信息

  • 输入包含ttt组测试数据,每组数据对应nnn(行走公里数)和xxx(奖励触发间隔);
  • 数据范围:1≤t≤1001 \leq t \leq 1001t1001≤n,x≤10001 \leq n, x \leq 10001n,x1000,无需考虑大数溢出问题;
  • 额外奖励的计算规则:仅统计完整的xxx公里间隔(如n=5n=5n=5x=2x=2x=2时,仅包含2个完整间隔,奖励2点)。

二、解题思路

  1. 读取测试组数:首先输入测试用例的数量ttt,确定需要循环处理的次数;
  2. 循环处理每组数据:对于每组测试数据,依次读取nnnxxx
  3. 计算总能量
    • 基础能量:nnn(固定不变);
    • 额外奖励能量:使用整数除法n/xn / xn/x(正好对应“完整间隔数”的要求);
    • 总能量 = 基础能量 + 额外奖励能量,即n+n/xn + n / xn+n/x
  4. 输出结果:每组数据计算完成后,直接输出总能量即可。

三、代码解析

#include<iostream>usingnamespacestd;intmain(){intt,x,n;cin>>t;// 读取测试用例组数t// 循环处理t组测试数据,循环变量i从1到t(i的取值不影响计算,仅用于控制循环次数)for(inti=1;i<=t;i++){cin>>n>>x;// 依次读取当前组的行走公里数n和奖励间隔x// 计算并输出总能量:n(基础能量) + n/x(额外奖励,整数除法自动取整)cout<<n+n/x<<endl;}return0;// 程序正常结束,返回0}

逐行说明

  1. #include <iostream>:引入C++标准输入输出流库,为cin(输入)和cout(输出)提供支持;
  2. using namespace std;:使用std命名空间,避免后续写std::cinstd::cout的冗余写法,简化代码;
  3. int main():C++程序的入口函数,程序从这里开始执行;
  4. int t,x,n;:声明3个整型变量,分别用于存储测试组数ttt、奖励间隔xxx、行走公里数nnn
  5. cin>>t;:从控制台读取一个整数,赋值给变量ttt,获取测试用例总数;
  6. for(int i=1;i<=t;i++):循环ttt次,对应处理ttt组测试数据;
  7. cin>>n>>x;:在每次循环中,依次读取两个整数,分别赋值给nnnxxx,获取当前组的核心参数;
  8. cout<<n+n/x<<endl;:核心计算与输出语句,完成总能量计算并换行输出结果,符合输出格式要求;
  9. return 0;:main函数返回0,表示程序正常执行完毕。

五、总结

  1. 本题核心是数学公式推导:总能量 =n+n/xn + n/xn+n/x,关键理解额外奖励的计算规则(整数除法取整);
  2. 编程重点是多组数据的循环处理,掌握for循环与cin/cout的配合使用;
  3. 本题是GESP二级基础应用题,难度较低,主要考察对整数除法特性和基本输入输出的掌握。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/23 9:39:46

CCF-GESP计算机学会等级考试2025年12月三级C++T2 小杨的智慧购物

B4450 [GESP202512 三级] 小杨的智慧购物 题目描述 小杨的班级要举办一个环保手工作品展览&#xff0c;老师请小杨去文具店购买 MMM 种不同的文具&#xff08;例如&#xff1a;铅笔、橡皮、尺子等&#xff09;。 商店里共有 NNN 件文具&#xff0c;每件文具都有一个种类编号&am…

作者头像 李华
网站建设 2026/5/22 23:24:57

良心插件,办公神器

今天给大家介绍一款强大的word插件&#xff0c;插件功能强大丰富包含122个功能。可以批量合并文档、批量拆分文档、批量导出Word数据到Excel、批量转数据值转换成大写金额、批量插入图片、批量另存图片、批量统一图片尺寸、批量调整Word表格的格式、批量打印文件、批量生成PDF、…

作者头像 李华
网站建设 2026/5/22 15:53:53

日语时间相关

下面把“日语时间相关”按 可直接套用的规则体系讲细&#xff1a;从“时间点、时间段、截止、先后、同时、频率、相对时间、书面/口语差异、易错点”逐一说明&#xff0c;并配对比例句。1) 时间点&#xff1a;表示“什么时候发生” 1.1 最核心&#xff1a;时间点通常用「に」 规…

作者头像 李华
网站建设 2026/5/24 3:49:09

vue基于Python+Django的高校考培中心考试培训管理服务系统

目录已开发项目效果实现截图关于博主开发技术介绍核心代码参考示例1.建立用户稀疏矩阵&#xff0c;用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;已开发…

作者头像 李华
网站建设 2026/5/20 19:10:03

YOLOv8 PAA正负样本分配新范式

YOLOv8 PAA正负样本分配新范式 在目标检测的实际项目中&#xff0c;你是否曾遇到过这样的问题&#xff1a;模型训练初期震荡剧烈、小目标召回率低、密集场景下误检频发&#xff1f;这些问题的背后&#xff0c;往往隐藏着一个被长期忽视的关键环节——正负样本的分配方式。 传统…

作者头像 李华