全国信息学奥林匹克联赛(NOIP2017)复赛 普及组答案及解析.pdfVIP

全国信息学奥林匹克联赛(NOIP2017)复赛 普及组答案及解析.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、成绩

【问题描述】

牛牛最近学习了C++入门课程,这门课程的总成绩计算方法是:

总成绩=作业成绩×20%+小测成绩×30%+期末考试成绩×50%

牛牛想知道,这门课程自己最终能得到多少分。

【输入格式】

输入文件名为score.in。

输入文件只有1

行,包含三个非负整数A、B、C,分别表示牛牛的作业成绩、小测

成绩和期末考试成绩。相邻两个数之间用一个空格隔开,三项成绩满分都是100

分。

【输出格式】

输出文件名为score.out。

输出文件只有1行,包含一个整数,即牛牛这门课程的总成绩,满分也是100分。

【输入输出样例1】

【输入输出样例1说明】

牛牛的作业成绩是100分,小测成绩是100分,期末考试成绩是80分,总成

绩是100×20%+100×30%+80×50%=20+30+40=90。

【输入输出样例2】

【输入输出样例2说明】

牛牛的作业成绩是60分,小测成绩是90分,期末考试成绩是80分,总成绩是

60×20%+90×30%+80×50%=12+27+40=79。

【数据说明】

对于30%的数据,A=B=0。

对于另外30%的数据,A=B=100。

对于100%的数据,0≤A、B、C≤100且A、B、C都是10的整数倍。

参考答案:根据题目描述,总成绩=作业成绩×20%+小测成绩×30%+

期末考试成绩×

50%。首先,从输入文件中读取作业成绩A、小测成绩B和期末考试成绩C。然后,

根据总成绩的计算公式,计算总成绩。最后,将总成绩输出到输出文件中。

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

本题是一道关于成绩计算的简答题,需要根据总成绩的计算公式,对输入的作业成

绩、小测成绩和期末考试成绩进行计算,得出总成绩并输出。

首先,从输入文件中读取作业成绩A、小测成绩B和期末考试成绩C,这里需要注

意的是,输入的文件名为score.in,输入文件只有1行,包含三个非负整数A、B、C

,相邻两个数之间用一个空格隔开,三项成绩满分都是100分。

然后,根据总成绩的计算公式,计算总成绩。总成绩的计算公式为总成绩=

作业成绩×20%+小测成绩×30%+期末考试成绩×

50%,这里需要注意的是,计算总成绩时,需要将百分比转换为小数进行计算,例

如20%转换为0.2,30%转换为0.3,50%转换为0.5。

最后,将总成绩输出到输出文件中,输出文件名为score.out,输出文件只有1行,

包含一个整数,即牛牛这门课程的总成绩,满分也是100分。

在编程实现时,可以使用C++等编程语言,读取输入文件,进行计算,并输出到输

出文件。需要注意的是,读取输入文件时,需要使用正确的文件格式和读取方式,

进行计算时,需要按照总成绩的计算公式进行计算,输出到输出文件时,需要使用

正确的文件格式和输出方式。

2、图书管理员

【问题描述】

图书馆中每本书都有一个图书编码,可以用于快速检索图书,这个图书编码是一个

正整数。

每位借书的读者手中有一个需求码,这个需求码也是一个正整数。如果一本书的图

书编码恰好以读者的需求码结尾,那么这本书就是这位读者所需要的。

小D

刚刚当上图书馆的管理员,她知道图书馆里所有书的图书编码,她请你帮她写

一个程序,对于每一位读者,求出他所需要的书中图书编码最小的那本书,如果没

有他

需要的书,请输出-1。

【输入格式】

输入文件名为librarian.in。

输入文件的第一行,包含两个正整数n和q,以一个空格分开,分别代表图书馆里

书的数量和读者的数量。

接下来的n行,每行包含一个正整数,代表图书馆里某本书的图书编码。

接下来的q行,每行包含两个正整数,以一个空格分开,第一个正整数代表图书馆

里读者的需求码的长度,第二个正整数代表读者的需求码。

【输出格式】

输出文件名为librarian.out。

输出文件有q行,每行包含一个整数,如果存在第i个读者所需要的书,则在第i

行输出第i个读者所需要的书中图书编码最小的那本书的图书编码,否则输出-1。

【输入输出样例1】

【输入输出样例1说明】

第一位读者需要的书有2123、1123、23,其中23

是最小的图书编码。第二位读者需要

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档