第12届蓝桥杯【国赛】Python组 2021年 建议答题时长:60min
1. 编程题

试题 A: 带宽

【问题描述】

小蓝家的网络带宽是 200 Mbps,请问,使用小蓝家的网络理论上每秒钟最多可以从网上下载多少 MB 的内容。

【答案提交】

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一

个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

查看答案
2. 编程题

试题 B: 纯质数

【问题描述】

如果一个正整数只有 1 和它本身两个约数,则称为一个质数(又称素数)。

前几个质数是:2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, · · · 。

如果一个质数的所有十进制数位都是质数,我们称它为纯质数。例如:2, 3, 5, 7, 23, 37 都是纯质数,而 11, 13, 17, 19, 29, 31 不是纯质数。当然 1, 4, 35也不是纯质数。请问,在 1 到 20210605 中,有多少个纯质数?

【答案提交】

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一

个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

查看答案
3. 编程题

试题 C: 完全日期

【问题描述】

如果一个日期中年月日的各位数字之和是完全平方数,则称为一个完全日期。

例如:2021 年 6 月 5 日的各位数字之和为 2 + 0 + 2 + 1 + 6 + 5 = 16,而

16 是一个完全平方数,它是 4 的平方。所以 2021 年 6 月 5 日是一个完全期。

例如:2021 年 6 月 23 日的各位数字之和为 2 + 0 + 2 + 1 + 6 + 2 + 3 = 16,

是一个完全平方数。所以 2021 年 6 月 23 日也是一个完全日期。请问,从 2001 年 1 月 1 日到 2021 年 12 月 31 日中,一共有多少个完全日期?

【答案提交】

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

查看答案
4. 编程题

试题 D: 最小权值

【问题描述】

对于一棵有根二叉树 T,小蓝定义这棵树中结点的权值 W(T) 如下:

空子树的权值为 0。

如果一个结点 v 有左子树 L, 右子树 R,分别有 C(L) 和 C(R) 个结点,则

W(v) = 1 + 2W(L) + 3W(R) + (C(L))2 C(R)。树的权值定义为树的根结点的权值。

小蓝想知道,对于一棵有 2021 个结点的二叉树,树的权值最小可能是多少?

【答案提交】

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。


查看答案
5. 编程题

试题 E: 大写

【问题描述】

给定一个只包含大写字母和小写字母的字符串,请将其中所有的小写字母

转换成大写字母后将字符串输出。

【输入格式】

输入一行包含一个字符串。

【输出格式】

输出转换成大写后的字符串。

【样例输入 1】

LanQiao

【样例输出 1】

LANQIAO

【评测用例规模与约定】

对于所有评测用例,字符串的长度不超过 100。

查看答案
6. 编程题

试题 F: 123

【问题描述】

小蓝发现了一个有趣的数列,这个数列的前几项如下:

1, 1, 2, 1, 2, 3, 1, 2, 3, 4, ...小蓝发现,这个数列前 1 项是整数 1,接下来 2 项是整数 1 至 2,接下来3 项是整数 1 至 3,接下来 4 项是整数 1 至 4,依次类推。小蓝想知道,这个数列中,连续一段的和是多少。

【输入格式】

输入的第一行包含一个整数 T,表示询问的个数。

接下来 T 行,每行包含一组询问,其中第 i 行包含两个整数 li 和 ri,表示询问数列中第 li 个数到第 ri 个数的和。

【输出格式】

输出 T 行,每行包含一个整数表示对应询问的答案。

【样例输入】

3

1 1

1 3

5 8

【样例输出】

148

查看答案
7. 编程题

试题 G: 冰山

【问题描述】

一片海域上有一些冰山,第 i 座冰山的体积为 Vi。随着气温的变化,冰山的体积可能增大或缩小。第 i 天,每座冰山的变化量都是 Xi。当 Xi > 0 时,所有冰山体积增加 Xi;当 Xi < 0 时,所有冰山体积减少 −Xi;当 Xi = 0 时,所有冰山体积不变。如果第 i 天某座冰山的体积变化后小于等于 0,则冰山会永远消失。冰山有大小限制 k。如果第 i 天某座冰山 j 的体积变化后 Vj 大于 k,则它会分裂成一个体积为 k 的冰山和 Vj − k 座体积为 1 的冰山。第 i 天结束前(冰山增大、缩小、消失、分裂完成后),会漂来一座体积为Yi 的冰山(Yi = 0 表示没有冰山漂来)。小蓝在连续的 m 天对这片海域进行了观察,并准确记录了冰山的变化。小蓝想知道,每天结束时所有冰山的体积之和(包括新漂来的)是多少。由于答案可能很大,请输出答案除以 998244353 的余数。

【输入格式】

输入的第一行包含三个整数 n, m, k,分别表示初始时冰山的数量、观察的天数以及冰山的大小限制。

第二行包含 n 个整数 V1, V2, · · · , Vn,表示初始时每座冰山的体积。

接下来 m 行描述观察的 m 天的冰山变化。其中第 i 行包含两个整数 Xi, Yi,意义如前所述。

【输出格式】

输出 m 行,每行包含一个整数,分别对应每天结束时所有冰山的体积之和除以 998244353 的余数。

【样例输入】

1 3 6

1

6 1

2 2

-1 1

【样例输出】

8

16

11

【样例说明】

在本样例说明中,用 [a1, a2, · · · , an] 来表示每座冰山的体积。

初始时的冰山为 [1]。 第 1 天结束时,有 3 座冰山:[1, 1, 6]。 第 2 天结束时,有 6 座冰山:[1, 1, 2, 3, 3, 6]。 第 3 天结束时,有 5 座冰山:[1, 1, 2, 2, 5]。

查看答案
8. 编程题

试题 H: 和与乘积

【问题描述】

给定一个数列 A = (a1, a2, · · · , an),问有多少个区间 [L, R] 满足区间内元素

的乘积等于他们的和,即 aL · aL+1 · · · aR = aL + aL+1 + · · · + aR 。

【输入格式】

输入第一行包含一个整数 n,表示数列的长度。

第二行包含 n 个整数,依次表示数列中的数 a1, a2, · · · , an。

【输出格式】

输出仅一行,包含一个整数表示满足如上条件的区间的个数。

【样例输入】

4

1 3 2 2

【样例输出】

6

【样例解释】

符合条件的区间为 [1, 1], [1, 3], [2, 2], [3, 3], [3, 4], [4, 4]。

查看答案
9. 编程题

试题 I: 二进制问题

【问题描述】

小蓝最近在学习二进制。他想知道 1 到 N 中有多少个数满足其二进制表示中恰好有 K 个 1。你能帮助他吗?

【输入格式】

输入一行包含两个整数 N 和 K。

【输出格式】

输出一个整数表示答案。

【样例输入】

7 2

【样例输出】

3

查看答案
10. 编程题

试题 J: 翻转括号序列

问题描述

给定一个长度为 n 的括号序列,要求支持两种操作:

1. 将 [Li, Ri] 区间内(序列中的第 Li 个字符到第 Ri 个字符)的括号全部翻转(左括号变成右括号,右括号变成左括号)。

2. 求出以 Li 为左端点时,最长的合法括号序列对应的 Ri (即找出最大的Ri 使 [Li, Ri] 是一个合法括号序列)。

输入格式

输入的第一行包含两个整数 n, m,分别表示括号序列长度和操作次数。第二行包含给定的括号序列,括号序列中只包含左括号和右括号。接下来 m 行,每行描述一个操作。如果该行为 “1 Li Ri”,表示第一种操作,区间为 [Li, Ri] ;如果该行为 “2 Li” 表示第二种操作,左端点为 Li。

输出格式

对于每个第二种操作,输出一行,表示对应的 Ri。如果不存在这样的 Ri,请输出 0。

样例输入

7 5

((())()

2 3

2 2

1 3 5

2 3

2 1

样例输出

4

7

0

0

查看答案
试题目录
编程题
1 2 3 4 5 6 7 8 9 10
赣ICP备20007335号-2