最新消息:

2019年北京青少年信息学科普日活动市级测试考题(小学组)

C++ 少儿编程 2103浏览 0评论

2019年北京青少年信息学科普日活动市级测试考题(小学组)

第 1 题:素数(prime)

问题描述:

素数,又称质数,指在大于 1 的自然数中,除了 1 和此整数自身外,不被其他自然数整除的数。换句话说,只有两个正约数(1 和自身)的自然数即为素数。比 1 大但不是素数的数被称为合数。1 和 0 既非素数也非合数。对于两个整数,如果它们的公约数只有 1,就称这两个整数互质。小米明白了素数和互质的概念后,老师出了这样一道题,输入两个数,如果他们互质,计算它们之和,否则,计算它们乘积。最后的结果判断是否是素数。

输入格式:

两个整数 m, n。

输出格式:

第一行是一个整数,即根据互质情况算出的结果。

第二行是一个字符串,根据上面得到的结果判断是否是素数,如果是则输出“YES” ,否则输出“NO”。

输入样例:

12 7

输出样例:

19

YES

数据范围:

100%的数据:2 <= m, n <= 109。

 

第 2 题:乒乓球(ball)

问题描述:

小花在乒乓球馆里最喜欢一个叫樊振东的选手,今天它趴在窗户上看了一下午他们的训练,直到被打扫卫生的大叔赶走。小花的记性非常好,能够记录一整个下午的比赛情况,比如这次它记录的情况是(其中 F 表示樊振东选手获得一分,A 表示樊振东的对手获得一分):FFFFFFFFFFFFFFFFFFFFFFAF。在当前的赛制下,此时比赛的结果是樊振东第一局 11 比 0 获胜,第二局 11 比 0 获胜,正在进行第三局,当前比分 1 比 1。

因为小花看得太全神贯注了,完全没有注意比分,以至于它完全不知道一下午比赛的具体比分,于是小花去找它的好朋友编程兔来帮忙。可是编程兔去挖萝卜不在家,于是小花来求助聪明的小朋友们。

你的程序要对于一系列比赛信息的输入(FA 形式),输出正确的结果。注:

1)乒乓球比赛采用 11 分制。一般情况下先取得 11 分的选手获胜,但是如果双方比分来到 10 平后,需要胜出 2 分才算胜,如:12:10、17:15 等。

2)如果一局比赛刚开始,则此时比分不必输出。

输入格式:

输入包含若干行字符串,每行至多 20 个字母。字符串由大写的 F、A 和 E 组成。其中 E 表示比赛信息结束。程序应该忽略 E 之后的所有内容。

输出格式:

输出有若干行,每一行对应一局比赛的比分(按输入顺序)。

输入样例:

FFFFFFFFFFFFFFFFFFFF

FFAFE

输出样例:

11:0

11:0

1:1

样例说明:

前 11 分都是 F,所以第一局 11:0,之后 11 分也都是 F,所以第二局也是11:0,最后两分分别是 A 和 F,所以是 1:1,E 表示结束。

数据规模:

每行最多有 20 个字符,只有 F、A 和 E 三种字母,没有其他多余的字母。

对于 30%的数据,输入只有一行。

对于 60%的数据,输入不超过 10 行。

对于 100%的数据,输入数据不超过 10000 行。

第 3 题:乘法(mul)

问题描述:

小军刚刚学习了四舍五入的方法,于是结合以前学习的乘法进行了一些练习,自己的计算能力得到很大提升。希望你帮他验证一些计算结果是否正确。在一次练习中,小军的做法是这样的:对一个大于 0 的实数,先将这个实数四舍五入取整,然后计算取整后每位数字的乘积,最后将乘积对 10007 取模。

输入格式:

输入一个大于 0 的实数。

输出格式:

输出经过上述计算后的结果。

输入样例:

23.4

输出样例:

6

数据范围:

输入数据的长度(包括小数点)在 100 位以内。

第 4 题:喜好(like)

问题描述:

每个人都有一些喜好。小红有个特别的喜好,在商店中,如果一件商品的价格达到并超过一个指定的数字,就坚决不喜欢,否则就喜欢。今天小红跟着妈妈去超市买东西,看到许多商品的价格。

现在告诉你一个指定的数字和这些商品价格,请你回答有几件商品是小红喜欢的。

输入格式:

第一行是一个整数 m,表示指定的数字。

第二行是一个整数 n,表示一共有多少件商品。

第三行是 n 个整数。

输出格式:

输出一行,一个整数,表示小红喜欢几件商品。

输入样例:

200

5

120 300 200 230 12

输出样例:

2

数据范围:

对于 100%的数据:1 <= m, n <= 106。

第 5 题:回文数列(palindrome)

问题描述:

对一个正整数 K,求出 K 的所有拆分,并统计输出其中回文数列的个数。

所谓回文数列是指该数列中的所有数字,从左向右或从右向左看都相同。

例如 K = 4 时,共有以下 7 种拆分:

4 = 1+1+1+1 (回文数列 1)

=1+1+2

=1+2+1 (回文数列 2)

=2+1+1

=2+2 (回文数列 3)

=1+3

=3+1

其中有 3 种是回文数列。

输入格式:

一个正整数 K。

输出格式:

输出一个整数,表示 K 的所有拆分中回文数列的个数。

输入样例:

4

输出样例:

3

数据范围:

对于 100%的数据:1 <= K <= 26。

转自公众号:
信息学少儿编程

您必须 登录 才能发表评论!