2023年慈溪市小学生计算机程序设计竞赛复赛试题_第1页
2023年慈溪市小学生计算机程序设计竞赛复赛试题_第2页
2023年慈溪市小学生计算机程序设计竞赛复赛试题_第3页
2023年慈溪市小学生计算机程序设计竞赛复赛试题_第4页
2023年慈溪市小学生计算机程序设计竞赛复赛试题_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第第1010©慈溪市教育局教研室慈溪市青少年科技辅导员协会2023年慈溪市小学生计算机程序设计竞赛复赛试题竞赛时间:2023年12月28日上午题目概览8:30—10:30中文题目名称扑克牌玩耍换位置玩耍小球装箱玩耍连续质数和提交源程序文件名card.pasmove.pasball.pasprime.pas输入文件名card.inmove.inball.inprime.in输出文件名card.outmove.outball.outprime.out每个测试点时限1111测试点数目10202020每个测试点分值10555运行内存上限50MB50MB50MB50MB留意事项选手竞赛时,都应在E盘的根名目下建立自己的竞赛文件夹,该文件夹的名称为考生的考号。同时需在竞赛文件夹内为每题建立对应的题目名目〔名称与题目名称一样,严格区分大小写〕。例如:假设题目有cashier、dune、manhattan三题。参赛号为cx08的选手,其最终提交的文件为cashierpas、dune.pas、manhattan.E|---cx08|---cashier/| |---cashier.pas|---dune/| |---dune.pas|---manhattan/|---manhattan.pas选手依据题目要求,将自己提交的源文件,放在该题的题目名目下〔只需递交源文件,评测时以源文件为准,不测可执行程序,收卷时只复制E盘竞赛文件夹,凡放错位置的文件或以书面形式提交的答卷一律视作无效;题目要求命名,严格区分大小写。例如:题目要求输入文件名为game.in,则程序中必需依据该名字翻开文件,不能使用Game.in、GAME.IN等名字;程序中必需承受文件读写的方法来实现数据的输入和结果的输出,即程序运行时所需输入数据应从〔而不是输出到屏幕上;为其指定任何特别的路径;车换行符;如遇机器故障,一律请监考教师处理,竞赛中途及完毕时都不得自行关机或重启机器,否则后果自负。扑克牌玩耍(card.pas)【问题描述】聪聪和明明两位小朋友正在玩一个扑克牌玩耍。每一副扑克牌有黑桃、红桃、草花、方块四种花色,每种花色有13张牌,牌值分别是Ace、2、3、4、5、6、7、8、9、10、Jack、Queen、King,如以以下图所示:每一轮出牌,聪聪首先拿出一张牌,然后明明也拿出一张牌,当明明拿出的牌与聪聪拿......时,明明才能获得本轮出牌的成功,否则聪聪成功。这里我们假定牌值的大小关系为:2<3<4<5<6<7<8<9<10<Jack<Queen<King<Ace请编程计算某一轮出牌中,当聪聪拿出一张牌后,明明有多少种出牌方案可以获得成功,【输入数据】输入文件card.in:输入从文件中读取,输入共N+2行。第1行是表示聪聪的出牌信息,首先是一个代表花色的小写字母,然后是一个代表牌值的整数,中间用一个空格分隔。第2行一个整数N〔≤100,表示明明现在手上牌的数量。接下来N行,每行表示明明手中一张牌的信息,首先是一个代表花色的小写字母,然后是一个代表牌值的整数,中间用一个空格分隔。留意,他们玩的玩耍有多副牌..,所以有些牌可能重复。说明:表示花色的小写字母为“s”、“h”、“c”、“d”,分别表示黑桃、红桃、草花、方块。表示牌值的整数为1到13,其中1表示Ace,11表示Jack,12表示Queen,13表示King。【输出数据】输出文件card.out:结果输出到文件中,输出共2行。第1行输出明明要想获得成功有多少种出牌方案。花色和牌值都一样的出牌方案算作一种。假设明明没有可以获胜的出牌方案,则输出“0”,此时第2行不需要输出。第2行输出明明要想获得成功可以出的牌中牌值最小.花色和牌值,中间用一个空格分隔。花色用小写字母“s”、“h”、“c”、“d”分别表示黑桃、红桃、草花、方块,牌值用Ace、2、3、4、5、6、7、8、9、10、Jack、Queen、King1到13。card.inh11card.inh114c1h12h10s12card.out1hQueen【样例1解释】聪聪本轮出的牌位为红心Jack。明明有4张牌,分别为草花Ace,红心Queen,红心10和黑桃Queen。明明要想获得成功,出的牌花色必需和聪聪一样且牌值比聪聪的大,所以只有1Queen。【输入输出样例2】card.incard.inh56s1h1c10h7h12h7card.out3h7【样例2解释】聪聪本轮出的牌为红心5,明明有6张牌,分别为黑桃Ace、红心Ace、草花10、红心7、红心Queen和红心7。明明要想获得成功,出的牌花色必需和聪聪一样且牌值比聪聪的大,所以有3种出牌方案,为红心Ace、红心Queen和红心7,其中红心7明明有2张7。【输入输出样例3】card.incard.inh14s1h1c10h13card.out0【样例3解释】聪聪本轮出的牌为红心Ace,明明手上现在有4张牌,分别为黑桃Ace、红心Ace、草花10、红心King。明明要想获得成功,出的牌花色必需和聪聪一样且牌值比聪聪的大,0,此时第2行不需要输出。【数据范围商定】全部的输入数据保证1≤N≤100。换位置玩耍(move.pas)【问题描述】N个小朋友〔编号为1到N〕N个凳子〔编号为1到,最左边的为1号凳子,最右边的为N号凳子字〔凳脚处红色数字,每个数字互不一样,且都是不超过N的正整数。玩耍开头前,1号小朋友坐在1号凳子上,2号小朋友坐在2号凳子上,然后依次下去,N号小朋友坐在N号凳子上。比方当N=4时,玩耍开头前小朋友们坐凳子的状态如以以下图1所示:图14位小朋友坐凳子的状态坐定后,玩耍开头。每位小朋友看一下自己坐的凳子凳脚处的数字,然后依据这个数字找到相应号码的凳子。比方上面的例子,1号小朋友凳脚处数字是3,所以他到3号凳子上坐下,2号小朋友凳脚处数字是1,所以他到1号凳子坐下,3号小朋友凳脚处数字是2,所以他到2号凳子坐下,4号小朋友凳脚处数字是4,所以他到4号凳子坐下。经过一轮换位置以后,42所示:图21轮换位置后小朋友们坐凳子的状态图32图32轮换位置后小朋友们坐凳子的状态坐定后,每位小朋友再看一下自己凳脚的数字,依据凳脚的数字再连续换位置,第三轮4所示:图43轮换位置后小朋友们坐凳子的状态当第三轮换位置完毕后,觉察每位小朋友又各自坐到了玩耍开头前的位置上,此时.。从上面的过程我们可以觉察,从玩耍开头经过3轮换位置后又回到了玩耍开头前坐凳子的状态,但当N很大的时候,这个换位置过程格外简洁,请编程帮助计算一下最少需要经过多少轮换位置才能回到玩耍开头前坐凳子的状态。【输入数据】输入文件move.in:输入从文件中读取,输入共2行。第1行是一个整数N〔≤1000的数目。第2行N个互不一样的正整数〔1≤N,≤≤N,i表示第i把凳子凳脚处的数字。【输出数据】输出文件move.out:结果输出到文件中,输出共1行。表示小朋友们通过换位置后回到玩耍开头前坐凳子的状态最少..需要经过多少轮。测试数据保证输出的结果不超出20230000。【输入输出样例1】move.inmove.in3123move.out1【样例1解释】输入有3把凳子。1号凳子凳脚处的数字为1,2号凳子凳脚处的数字为2,3号凳子凳脚处的数字为3。第1轮换位置后,1号小朋友照旧坐在1号凳子上,2号小朋友照旧坐在2号凳子上,3号小朋友照旧坐在3号凳子上。所以经过1轮就回到了玩耍开头前状态。【输入输出样例2】move.inmove.in523451move.out5【样例2解释】玩耍中有5个小朋友5把凳子,1到5号凳子凳脚处的数字依次为:23451。第1轮换位置后,1到5号凳子上小朋友的编号为:51234第2轮换位置后,1到5号凳子上小朋友的编号为:45123第3轮换位置后,1到5号凳子上小朋友的编号为:34512第4轮换位置后,1到5号凳子上小朋友的编号为:23451第5轮换位置后,1到5号凳子上小朋友的编号为:12345【数据范围商定】对于60%的数据,1≤N≤500,且最少需要交换的轮数10000。对于100%的数据,1≤N≤1000,且最少需要交换的轮数不超过20230000。小球装箱玩耍(ball.pas)【问题描述】乐乐小朋友正在玩一个小球装箱的玩耍。现在有N个小球〔编号为1到N,每个小球有一种颜色〔红色或者绿色A和B,乐乐想把这些球放进这两个球箱里面,并且保证:每个球箱中球的数量要一样多。球箱A中的任意一个球上的数字不小于B中任意一个球上的数字。假设红色小球和绿色小球上的数字一样时,红色小球优先A。装箱完成后,乐乐想知道A、B两个球箱中红色小球和绿色小球各有多少个。由于球的数量比较多,请你编程计算一下吧。【输入数据】输入文件ball.in:输入从文件中读取,输入共N+1行。第1行是一个整数〔≤100000,表示小球的总数。接下来N行,第1行两个整数〔≤2023〕和i为0或者1,其中Mi表示第i个小球上面的数字,Pi表示第i个小球的颜色,0表示小球是红色,1表示小球是绿色。数据保证球的个数N为偶数。【输出数据】输出文件ball.out:结果输出到文件中,输出共2行。第1行两个整数,分别表示球箱A中红色小球和绿色小球的数量。第2行两个整数,分别表示球箱B中红色小球和绿色小球的数量。【输入输出样例1】ball.inball.in6113021416050ball.out2112【样例1解释】有6个小球,3个红色,3个绿色。将标有数字4,6,5的三个小球装在箱子A中,其他三个小球装在箱子B中,箱子A中的三个小球2个是红色,1个是绿色,而箱子B中的小球1个红色,2个绿色。【输入输出样例2】ball.inball.in82120204120518111ball.out1322【样例2解释】有8个小球,其中有3个标有数字2的红色小球,标有数字1、2、4、5、8的绿色小球各1个。将标有数字4、5、8的3个绿色小球和1个标有数字2的红色小球放入球箱A,将另外2个标有数字2的红色小球,1个标有数字2的绿色小球和1个标有数字1的绿色小球放入球箱B。留意,放入球箱A中标有数字2的小球是红色,由于它比标有数字2A。【数据范围商定】对于60%的数据,1≤N≤10000,1≤Mi≤10000,且保证各小球上标有的数字都不一样。对于100%的数据,1≤N≤100000,1≤Mi≤20230。连续质数和(prime.pas)【问题描述】质数又称素数,是大于1的正整数,除了1和它本身外不能被其他自然数整除,有无限个,比方,2、3、5、7等都是质数,但比方9就不是质数,由于它除了能被1和它自己3整除。悦悦小朋友对这类质数格外感兴趣,由于他觉察有一些数是能通过连续的质数相加得到的。比方5+7+11+13+17=53,也就是整数53可以由连续的质数5、7、11、13、17相加得到。有时相加的方案还不止一种,比方整数 41就有3种不同的连续质数相加方案:2+3+5+7+11+13=41,11+13+17=41,还有一种就它本身,即41=41。但也有的数是没有这样相加方案的,比方整数20就找不到连续质数相加的方案,虽然7+13或者3+5+5+7的结果都是20,但前者没有连续,后者质数被重复相加了。悦悦在纸上写了N〔1≤N≤100000〕个数,他想知道每一个整数Mi〔2≤Mi≤100000,1≤i≤N〕到底有多少种连续质数相加的方案?请你编程帮助他一下吧。【输入数据】输入文件prime.in:输入从文件中读取,输入共N+1行。第1行一个整数N,表示悦悦在纸上写了N个整数。接下来每行一个整数,其中第i+1行表示整数Mi。【输出数据】输出文件prime.out:结果输出到文件中,输出共N行。输出的第i行表示整数Mi有多少种连续质数相加的方案。【输入输出样例】prime.inprime.in42121720prime.out1120【样例解释】样例中悦悦写了4个整数,分别为2,12,17和20。由于2=2,所以2可以找到满足条件的1种方案。由于5+7=12,所以12有1种方案。由于2+3+5+7=17,17=17,所以17有2种方案满足条件。200。【数据范围商定】对于30%的数据保证1≤N≤100,2≤Mi≤100。对于50%的数据保证1≤N≤1000,2≤Mi≤1000。对于100%的数据保证1≤N≤100000,2≤Mi≤100000。#include<cstdio>#include<algorithm>

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论