2021年09月C语言四级答案及解析.pdfVIP

  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、1.吃奶酪

Jerry准备偷吃Tom的奶酪。所有的奶酪排成了一条直线,每块奶酪都有不同的美味

程度。然而,如果有相邻两块奶酪都被Jerry偷吃,Tom就会发现这一点并迅速抓住

Jerry。Jerry当然希望在不被Tom发现的条件下吃到的奶酪美味度总和最大。当然,

他也可以选择一块奶酪都不吃。请你帮助他规划一下偷吃的方案,告诉他最多能偷

吃到多少的美味度吧。

时间限制:1000

内存限制:65536

输入

第一行一个整数T(T=100),表示测试数据组数。

接下来,每组测试数据包含两行。其中,第一行一个整数n(1=n=100,000)

,表示奶酪的数量;第二行n个整数,表示这一排直线上奶酪的美味程度,请注意

,美味度保证能够被int类型存储,且可能是负数。

输出

对于每组测试数据,输出一个整数,表示Jerry可以吃到的最大美味度总和。请注意

,美味度总和可能超过int存储范围

样例输入

2

4

1231

5

27931

样例输出

4

12

参考答案:

解析:【喵呜刷题小喵解析】:这个问题可以使用动态规划来解决。我们定义dp数

组,其中dp[i]表示在偷吃奶酪到第i块时,能够获得的最大美味度总和。我们使用

动态规划的思想,通过遍历每一块奶酪,根据当前奶酪的美味度和前两块奶酪的美

味度总和,计算出偷吃奶酪到第i块时能够获得的最大美味度总和。最终,dp[n]就

是所求的最大美味度总和。在遍历每一块奶酪时,我们有两种选择:偷吃或者不吃

。如果我们选择偷吃第i块奶酪,那么dp[i]的值就是dp[i-2]+

cheese[i];如果我们选择不吃第i块奶酪,那么dp[i]的值就是dp[i-

1]。我们比较这两种选择的美味度总和,取较大的值作为dp[i]的值。这样,我们就

可以通过动态规划的思想,计算出偷吃奶酪能够获得的最大美味度总和。

2、2.奶牛散步

参考答案:

解析:【喵呜刷题小喵解析】:由于题目中并未给出具体的编程要求,因此无法直

接给出编程答案。需要根据题目中奶牛散步的图片,结合具体的应用场景,才能确

定需要实现的功能和算法。如果这是一道图像处理或计算机视觉的题目,可能需要

识别图片中的奶牛,跟踪其运动轨迹,或者分析其行为模式等。如果这是一道游戏

开发或动画制作的题目,可能需要模拟奶牛散步的动作,或者制作一个奶牛散步的

动画等。因此,在给出具体的编程答案之前,需要更详细的了解题目的背景和要求

,才能确定需要实现的功能和算法。同时,也需要根据具体的编程语言和环境,选

择合适的算法和数据结构来实现所需的功能。

3、3.数字构造

火山宝打算造一个n位的十进制数字出来。

对于1到n中的每一个i,火山宝可以从xi,1,...,xi,ki这ki个0-9

的数字中选择一个作为ai。

在选择结束后,a1a2...an形成了一个n位的十进制数——

这就是火山宝造出来的数。

你需要帮火山宝计算他能造出的数中,有多少个是3的倍数。

时间限制:1000

内存限制:65536

输入

第一行输入一个整数n(1≤n≤18),表示数字的位数。接下来n

行,每行第一个整数ki(1≤ki≤10),表示第i中候选的数字数量。接着是ki

个两两不同的0-9范围内的数字xi,1,...,xi,ki。输入保证0不是第一位的可选项。

输出

你需要输出一行一个整数,表示火山宝能造出的数字中,3的倍数的数量。

样例输入

样例输入1:

2

556789

501234

样例输入2:

5

9123456789

100123456789

100123456789

100123456789

100123456789

样例输出

样例输出1:

9

样例输出2:

30000

提示

样例1能造出来的3的倍数有51,54,60,63,72,81,84,90,93。

参考答案:

解析:【喵呜刷题小喵解析】:本题是一道动态规划问题,可以使用动态规划来解

决。首先,定义dp[i][j]表示前i位数字中,以数字j结尾的3

的倍数的数量。根据题目描述,我们可以得到以下状态转移方程:1.如果j%3==

0,则dp[i][j]=dp[i-1][(j-

文档评论(0)

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

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

1亿VIP精品文档

相关文档