第10届蓝桥杯C++青少组省赛2019年真题答案及解析.pdfVIP

第10届蓝桥杯C++青少组省赛2019年真题答案及解析.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

一、实操题

1、水下探测器

水下探测器可以潜入湖中在任意水深进行科学探索。湖水的最大深度为h米即它在

湖底时到水面的距离,0=h=100;探测器最初的水下深s米,0=s=100;

当探测器不在水面(当前深度大于0)

时,每个指令可使它上浮1米,而当探测器在水面时,u指令是无效的;

当探测器不在湖底(当前深度小于h)时,每个d指令可使它下沉

1米,而当探测器在湖底时,d指令是无效的;

在执行到无效指令时,探测器不做任何操作而继续执行下一指令。编程实现:

根据给定的h、s和一个指令序列(由字符u、d组成的字符串,长度不超过

100),求出执行完整的指令序列后,探测器的水下深度。

输入:

第一行:h和s,以空格分开。0=s=h=100第二行:长度不超过

100的指令字符串,串中仅包含字母u或d

输出:

代表探测器在执行指令后的水下深度的数字

样例输入:

91

uduudd

样例输出:

2

样例数据分析:水深9米,探测器在水下1米处

字符u代表向上1米,探测器上浮到0米处

字符d代表向下1米,探测器下沉到1米处

字符u代表向上1米,探测器上浮到0米处字符u代表向上1米探测器已经在水面,不能上

浮,依然在0米处字符d代表向下1米,探测器下沉到1米处字符d代表向下1米,探测器下

沉到2米处

最终结果为2

参考答案:根据给定的h、s和一个指令序列,我们可以编写一个程序来模拟探测器

水下深度的变化。首先,我们需要读取输入的h和s,然后读取指令序列。对于每个

指令,我们可以根据当前的深度和h的大小来确定指令是否有效,并根据指令的类

型进行相应的上浮或下沉操作。最后,返回最终的深度。

解析:【喵呜刷题小喵解析】:

首先,我们需要理解题目中给出的水下探测器的行为规则。当探测器不在水面时,

每个u指令可以使它上浮1米;当探测器不在湖底时,每个d指令可以使它下沉1米。

当探测器在水面或湖底时,相应的指令是无效的。

根据题目要求,我们需要编写一个程序来模拟探测器水下深度的变化。程序需要读

取输入的h和s,以及指令序列。然后,程序需要遍历指令序列,对于每个指令,根

据当前的深度和h的大小来确定指令是否有效,并根据指令的类型进行相应的上浮

或下沉操作。最后,程序返回最终的深度。

在样例数据中,水深h为9米,探测器最初的水下深s为1米。指令序列为uduudd。

首先,探测器在水下1米处,执行u指令,探测器上浮到水面,深度变为0米。然后

,执行d指令,探测器下沉到1米处。接着,再次执行u指令,探测器上浮到水面,

深度再次变为0米。然后,执行d指令,探测器下沉到1米处。最后,执行d指令,探

测器下沉到2米处。最终结果为2,符合题目要求。

2、猫吃鱼

明明家从1号站点出发,开车去旅游,一共要经过n个站点,依次为

2、3n。由于明明带上了心爱的小猫,在每个站点都要为小猫提供一条鱼用做美

餐(包括1号站点)。除了1号站点只能吃1号站点买的鱼,其他站点既可以吃当地买

的鱼,也可吃之前经过的站点买了存入车载冰箱中的鱼。

但车载冰箱消耗的电能来自汽油,所以每条鱼用冰箱保存到下一站的费用与各个站

点的汽油价格有关为使问题简化,我们约定:

(1)车从某站开出时油箱中都是此站点刚加的汽油

(2)车载冰箱能容纳一路上需要的所有鱼。

即:每条鱼的费用既包括购买时的费用,也包括用冰箱保存鱼的费用。

编程实现:

为了降低小猫吃鱼的总代价,明明预先上网查到了这n个站点的鱼价和汽油价格。

并据此算出每个站点买一条鱼的费用以及从该站点到下一站用冰箱保存一条鱼的费

用。你能帮明明算出这一路上小猫吃鱼的最小总费用吗?

输入:

第一行:站点数n,1n100

接下来的n行:每行两个以空格分隔的正整数,表示:这一站买一条鱼的费用,以及

从这一站把每条鱼保存到下一站的费用,两个费用均为小于10000的正整数

输出:

最小总费用,是一个正整数

样例输入:

5

63

71

32

83

95

样例输出

29

样例数据分析:

第一行数据5代表一共5站

第二行数据63代表本站购买鱼6元,运费3元,第一站必须一定先购买一条总花费6元

第三行数据71代表本站购买鱼7元,运费1元,从上一站最小花费+运费9元大于本站购

买的费用7,所以选择从本站购买鱼总花费6+7=13元

第四行数据32代表本站购买鱼3元,运费2元,从上一站最小花费+运费8元大于本站购

买的费用3,所以选择从本站购买鱼,总花费

您可能关注的文档

文档评论(0)

喵呜刷题 + 关注
实名认证
文档贡献者

来喵呜刷题,完成你的职业蜕变!

1亿VIP精品文档

相关文档