2023年青少年信息学奥林匹克初级竞赛辅导练习题

上传人:回**** 文档编号:166437156 上传时间:2022-11-01 格式:DOC 页数:14 大小:1.39MB
收藏 版权申诉 举报 下载
2023年青少年信息学奥林匹克初级竞赛辅导练习题_第1页
第1页 / 共14页
2023年青少年信息学奥林匹克初级竞赛辅导练习题_第2页
第2页 / 共14页
2023年青少年信息学奥林匹克初级竞赛辅导练习题_第3页
第3页 / 共14页
资源描述:

《2023年青少年信息学奥林匹克初级竞赛辅导练习题》由会员分享,可在线阅读,更多相关《2023年青少年信息学奥林匹克初级竞赛辅导练习题(14页珍藏版)》请在装配图网上搜索。

1、第一题(p236)问题描述:将键盘输入的字符串中所有的十进制数找出来,并求它们的和。输入:APPLE 25, PEAR 125屏幕输出:25+125=150输入:THIS IS A BOOK屏幕输出:0第二题(p236)问题描述:求n!(n!=l2345n)的精确值(n25 )。输入:n=11屏幕输出:n!=39916800第三题(p236)问题描述;当输入正整数N时(0N10),输出下列形状的图形。输入:N=3屏幕输出:6 3 10 5 20 0 4输入:N=5屏幕输出: 15 10 6 3 10 14 9 5 20 0 13 8 40 0 0 12 70 0 0 0 111编-程序,由计算

2、机随机产生十道10以内整数四则运算题,运算符由计算机随机产生,每做对-题加10分,并输出“GOOD。做完后,输出对几题、错几题以及总分是多少。(p233)说明:变量A, B为运算数,变量C为运算符代码。2输入一个正整数X,然后与它的倒序排列的数相加,求其结果。(p234)例如:正整数238,其倒序排列的数为832,其结果为238+832=1070。P28练习例2报数游戏(NOIP-TJ-2023小学组复赛题)。(p30)小朋友都喜欢做游戏,今天就教大家一个游戏。游戏规则非常简朴,基本描述如下:假设有n个小朋友玩这个游戏,那么我们把所有的人从1到n都逐个编好号码,以便游戏的开始。n个同学根据自己

3、的编号按照顺时针顺序站成一个圈。如下图(以10人为例): 110 29 38 47 56现在从编号1的小朋友开始按照顺时针的方向报数,报数的规则是,我们只做12报数,也就是报完1再报2,然后再报1,再报2.。当有人报数报到2时,此人就输掉了游戏,必须离开,当某个人离开游戏后,大家仍然保持相对的位置继续报数,直到只有1个人剩下时才停止,这个人就是游戏的胜利者。我们由上图(以10人为例),可以得到依次离开游戏的顺序:2, 4, 6, 8, 10, 3, 7, 1, 9。最后胜利者为编号是5的小朋友。通过几次游戏,聪明的小明感觉到了其中是有规律的,他猜测假如已知参与游戏的人数,那么这个胜利者编号就是

4、固定的,但是他却没有计算出来到底谁会赢得游戏。现在请你来帮助小明去计算到底谁是游戏的胜利者。每组数据都会告诉你参与这个游戏的人数n,并且n不会超过1000。请你对于每组数据都输出那个胜利者的编号。样例输入14f样例输出1)1(解释:离开游戏的顺序是:2, 4, 3。所以说剩下的编号为1的是胜利者。)样例输入210样例输山25(p34)(p34)(p34)(p34)(p34)(p34)p40【例4】产生整数序列。编程按递增顺序产生序列M中最小的100个整数。M定义如下:1)整数1属于M;2)假如x属于M,则y=2x+1, y=3x+1也属于M;3)除了上述两个条件外,再无其他整数属于M.分析:显

5、然整数序列M是按递推定义的。现在要按递增顺序产生序列M中最小的100个整数。一方面把数1放入到M中,然后按y=2x+1, y=3x+1产生两个数放置到序列的后面,按递增顺序排列。由于按表达式y=2x+1产生的数放置的位置也许不符合规定,使用插入排序法能不久调整递增顺序。在使用插入排序时,从后往前依次把数据后移,空出位置放置刚产生的整数。当发现新产生的数与序列中原有的某数相等时,要把本来后移的数据移回原处。p41例5数的计数(NOIP-2023)。我们规定找出具有下列性质的数的个数(包含输入的自然数n):先输入一个自然数n (n 1000),然后对此自然数按照如下方法进行解决:1不作任何解决;2

6、在它的左边加上一个自然数,但该自然数不能超过原数的一半;3加上数后,继续按此规则进行解决,直到不能再加自然数为止。样例,输入:6输出:6即满足条件的数有6个(以下部分不必输出)。6162612636136p56【例2】从下列国家名称中找到以J打头的国家名称:China,Japan,America,India,Laos,DATA China,Japan,America,India,LaosP101(2)用随机函数产生num个(1num100)9.17到917之间的实数(保存小数点后两位),并存放在数组x中,然后将前n个数颠倒排放。(3)对随机产生的100个0到50之间的随机整数用一个数组存放后进

7、行排序,然后再将其中反复出现的数进行删除,只保存一个,使得剩下的数中任何两个都不相同且连续存储在原数组中(2023年江苏年江苏省小学生组试题)。(4)我们将左右对称的自然数称为回文数,例如:121, 4114等;将只能被1与其自身整除的自然数称为素数,例如:7, 353等。键入N,M,求出N至M(含N与M)之间既是回文数又是素数的自然数共有多少个,(2023年江苏省小学组试题) (5)随机产生100个1到100之间的整数,在其中查找某个数,并输出其所在位置。 (6)从键盘输入一个正整数n,计算并输出比n小并且与n互素的数的个数。(两个数互素是指它们的最大公约数等于1。)P108【例5】回文数是

8、指那些顺读和倒过来读都同样的正整数,如12321, 881188等。它可用下列方法得到:任意写下一个2至4位的数;把此数的各位数字倒排,组成一个新数,加到原数上去;把得到的和数反复环节2,直到得出回文数。试编程实现。(数196很特殊,有人猜想它也许是一个算来算去也得不到回文数的最小自然数。)运营示例:输入: n=? 791输出:988187796581822790508171017881188P117【例2)记录字符数。对于任意输入的字符串求出组成该字符串的每种字符的长度(个数)及频率(比例)。编程规定:从键盘输入任意字符串;输出该字符串组成的不同字符(对于相同英文大小写字母按不同字符解决)和

9、它在该字符串中出现的次数及它对于整个字符串长度的比例(精确到百分位)。(1999年天津市青少年信息学(计算机)竞赛小学组复赛题)【例3】单词查找。输入一个英文句子,例如:”This is a Book.”,可以看到英文句子是以”.”来作为结束符号的,并且单词之间以一个空格来分隔。接着再输入一个单词a$,请找出初次在句子中出现的与a$相同的单词,显示是句子中的第几个单词,若不存在,则输出该句子中单词字符的总个数。例如对上面的句子而言,若输入单词”is”,则应输出:2;若输入单词为”is a”,则应输出:11。分析:本题已知两个条件:原字符串:以”.”来作为结束符号的英文句子;需寻找的字符串a$。

10、最后输出的结果也有两种情况:能在输入的句子中找到,则输出是句子中的第几个单词;不能在输入的句子中找到,则输出该句子中单词字符的总个数。问题的关键在于如何使用MID$()函数取出英文句子中的每一个单词。我们可用嵌套的两个循环结构来实现,内循环重要解决将英文句子中的字符组合成单词并与已知单词的比较问题;外循环控制将英文句子拆成若干个单词。变量说明:aa$:存放输入的英文句子a$:待查找的单词b$:从英文句子中取出的单词m:计数器,记录英文句子中单词的个数n:计数器,记录英文句子中字符的个数fLag:标志变量,fLag=1表达已经从英文句子中找到该单词x$:从英文句子中取出的一个字符【例4】给出一个

11、数字字符串,即字符串中的字符所有为数字,并以字符”$”结束(字符”$”,自身不是数字符,仅作为结束符号),例如:“12$”,”2135$”,”312456$”,设字符串的长度L8(涉及”$”)。今将数字字符串提成三个部分(分法为任意的),例如:”312456$”,可分为“3” ,”124”,”56”;或者”31”,”24”,”56”,从上例可看出,当数字串给出之后,提成三部分的分法是有很多种的(每-部分不能为空),对每一种分法,可以得到三个数。例如:分法”3”, “124”, “56”,相应的三个数为3, 124, 56;相应分数为:1/3, 1/124, 1/56。分法”31”, “24”,

12、 “56”,相应的三个数为31, 24, 56;相应分数为:1/31,1/24, 1/56. 程序规定:从键盘输入一个数字串(以$作为结束符号)。找出一种分法,使得到的三个分数的和s为最小,输出s的值(精确到小数点后第6位)。若给出的数字串中,非0的字符少于3个,例如:”12$”, “100100$”则此时不能组成三个数,输出一个”ERROR”,运营示例:输入:s$= 100100$输出:ERROR输入:s$= 3456789$输出:0.029060p121(4 ) PoLybius密码。公元前二世纪,希腊历史学家PoLybius想出一种信号通讯体制,他把字母排列在一个方表内,并把各行各列标上

13、数字,把单个字符放入表格内,这样每个字符用两个数字表达一它所在的横行数字和所在的纵列的数字。例如-种六码棋盘密码的表格如下:* 1 2 3 4 5 61 0 1 2 3 4 52 6 7 8 9 A B3 C D E F G H4 I J K L M N5 O P Q R S T6 U V W X Y Z以上述密本为蓝本,加上移位法(每个数加上密钥),就能进行加密与解密。试编程解之。 (5)最频繁的字母。小明是-名翻译,天天都要看许多令人头疼的英文。他无聊时会想-些很奇怪的问题,例如英文单词是如何组成的,它们有什么来源等等。有一天他忽然想,到底哪个英文字母在英文单词中出现的频率最高呢?他发现解

14、决这个问题的工作量还是很大的,于是找到了你帮助他解决这个问题。他会提供你一个仅由26个小写字母(az)组成的字符串s(中间不含空格),请你计算-下这字符串s中哪个字母出现的次数最多,假如说出现次数最多的字母不止一个,那么请把它们都打印出来,按照字母表的顺序输出(abcdef.xyz),也就是按照这些字母的ASCII由小到大输出出来。每组数据都只有一行,就是题目中所描述的字符串s,它的长度不会超过200。你也只需输出一行,即出现次数最多的字母。(假如很多,就按字母表序输出。)【样例输入1】abaca【样例输出1】a(解释:由于a出现了3次,而b和c都只出现了1次。)【样例输入2】msmcatac

15、【样例输出2】acm(解释:由于m, c, a都出现了2次,因此只要把m,c,a按照字母表的顺序输出即可。)【例6】找出小于33的6个正整数,用这些整数进行加法运算,使得涉及本来的整数在内,能组成尽也许多的不同整数。规定:输出这6个数以及能组成不同整数的个数。P128例如,用2, 3, 5这三个数能组成下面的数:2,3,5,2+3=5(已存在),2+5=7, 3+5=8,2+3+5=10所以用2, 3, 5这3个数能组成6个不同的数。4.5高精度计算(p130)BASIC系统规定整型数的取值范围为-32768一+32767,长整型数的取值范围为-一。假如想要获得超过这个精度的运算结果,那么只能

16、靠编程来实现,这就是计算机的高精度计算。【例1】高精度运算。编程计算两个任意位数正整数之和。【例2】编程计算两个任意位数正整数之积。运营示例:输入被乘数:输入乘数:输出: *=1235269【例3】把任意真分数q/p化为小数。计算时用p除以q,假如除不尽,则输出循环节。(p133)【例1】写出从a, b, c, d四个元素中任取三个的所有排列。【例2】用数字1, 2, 3, 4, 5组成三位数,有多少个,【例3】某班第一组有4名同学,今规定从中选出3名学生代表去参与座谈会,有多少种选法?P139运营示例:输入:m, n=? 50, 50输出:42925 1582700【例3】零件装箱。输入n和一组整数(以0结束),n表达编号1,2,n的箱子,一组整数表达零件的重量(单位为G)。现规定将一批零件,分别装入编号为1, 2,n运营示例:输入8, 152,3输出1+3/15输入13, 13183, 200输出13473/26200

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!