第十三届蓝桥杯省赛真题(Python B组)

第十三届蓝桥杯省赛已经落下帷幕啦

省二的第三名,感觉就差一点就能进国赛了,哎呀哎呀,好遗憾呀,差一点就能跟各位dalao在国赛相见啦

因为人太菜了,也不知道写的对不对,就先不放题解了


目录

试题 A: 排列字母

试题 B: 寻找整数

试题 C: 纸张尺寸

试题 D: 数位排序

试题 E: 蜂巢

试题 F: 消除游戏

试题 G: 全排列的价值

试题 H: 技能升级

试题 I: 最长不下降子序列

试题 J: 最优清零方案

试题 A: 排列字母

本题总分: 5
【问题描述】
小蓝要把一个字符串中的字母按其在字母表中的顺序排列。
例如, LANQIAO 排列后为 AAILNOQ
又如, GOODGOODSTUDYDAYDAYUP 排列后为 AADDDDDGGOOOOPSTUUYYY
请问对于以下字符串,排列之后字符串是什么?
WHERETHEREISAWILLTHEREISAWAY
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一
个由大写字母组成的字符串,在提交答案时只填写这个字符串,填写多余的内
容将无法得分。

试题 B: 寻找整数

本题总分: 5
【问题描述】
有一个不超过 10 17 的正整数 n ,知道这个数除以 2 49 后的余数如下表
所示,求这个正整数最小是多少。
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一
个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

 

试题 C: 纸张尺寸

时间限制 : 1.0s
内存限制 : 512.0MB
本题总分: 10
【问题描述】
ISO 国际标准中定义了 A0 纸张的大小为 1189 mm × 841 mm ,将 A0
沿长边对折后为 A1 纸,大小为 841 mm × 594 mm ,在对折的过程中长度直接取
下整(实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸,依此类推。
输入纸张的名称,请输出纸张的大小。
【输入格式】
输入一行包含一个字符串表示纸张的名称,该名称一定是 A0 A1 A2
A3 A4 A5 A6 A7 A8 A9 之一。
【输出格式】
输出两行,每行包含一个整数,依次表示长边和短边的长度。
【样例输入 1
A0
【样例输出 1
1189
841
【样例输入 2
A1
【样例输出 2
841
594

试题 D: 数位排序

时间限制 : 1.0s
内存限制 : 512.0MB
本题总分: 10
【问题描述】
小蓝对一个数的数位之和很感兴趣,今天他要按照数位之和给数排序。当
两个数各个数位之和不同时,将数位和较小的排在前面,当数位之和相等时,
将数值小的排在前面。
例如, 2022 排在 409 前面,因为 2022 的数位之和是 6 ,小于 409 的数位
之和 13
又如, 6 排在 2022 前面,因为它们的数位之和相同,而 6 小于 2022
给定正整数 n m ,请问对 1 n 采用这种方法排序时,排在第 m 个的元
素是多少?
【输入格式】
输入第一行包含一个正整数 n
第二行包含一个正整数 m
【输出格式】
输出一行包含一个整数,表示答案。
【样例输入】
13
5
【样例输出】
3
【样例说明】
1 13 的排序为: 1, 10, 2, 11, 3, 12, 4, 13, 5, 6, 7, 8, 9 。第 5 个数为 3
【评测用例规模与约定】
对于 30 % 的评测用例, 1 m n 300
对于 50 % 的评测用例, 1 m n 1000
对于所有评测用例, 1 m n 10的六次方

试题 E: 蜂巢

时间限制 : 1.0s
内存限制 : 512.0MB
本题总分: 15
【问题描述】
蜂巢由大量的六边形拼接而成,定义蜂巢中的方向为: 0 表示正西方向, 1
表示西偏北 60 2 表示东偏北 60 3 表示正东, 4 表示东偏南 60 5 表示西
偏南 60
对于给定的一点 O ,我们以 O 为原点定义坐标系,如果一个点 A O
先向 d 方向走 p 步再向 ( d + 2) mod 6 方向( d 的顺时针 120 方向)走 q 步到
达,则这个点的坐标定义为 ( d , p , q ) 。在蜂窝中,一个点的坐标可能有多种。
下图给出了点 B (0 , 5 , 3) 和点 C (2 , 3 , 2) 的示意。
给定点 ( d 1 , p 1 , q 1 ) 和点 ( d 2 , p 2 , q 2 ) ,请问他们之间最少走多少步可以到达?
【输入格式】
输入一行包含 6 个整数 d 1 , p 1 , q 1 , d 2 , p 2 , q 2 表示两个点的坐标,相邻两个整
数之间使用一个空格分隔。
【输出格式】
输出一行包含一个整数表示两点之间最少走多少步可以到达。
【样例输入】
0 5 3 2 3 2
【样例输出】
7
【评测用例规模与约定】
对于 25 % 的评测用例, p 1 , p 2 10的三次方  
对于 50 % 的评测用例, p 1 , p 2 10的五次方  
对于 75 % 的评测用例, p 1 , p 2 10的七次方  
对于所有评测用例, 0 d 1 , d 2 5 0 q 1 < p 1 10的九次方 0 q 2 < p 2 10的九次方  

试题 F: 消除游戏

时间限制 : 3.0s
内存限制 : 512.0MB
本题总分: 15
【问题描述】
在一个字符串 S 中,如果 S i = S i 1 S i , S i +1 ,则称 S i S i +1 为边缘
字符。如果 S i , S i 1 S i = S i +1 ,则 S i 1 S i 也称为边缘字符。其它的字符
都不是边缘字符。
对于一个给定的串 S ,一次操作可以一次性删除该串中的所有边缘字符
(操作后可能产生新的边缘字符)。
请问经过 2 64 次操作后,字符串 S 变成了怎样的字符串,如果结果为空则
输出 EMPTY
【输入格式】
输入一行包含一个字符串 S
【输出格式】
输出一行包含一个字符串表示答案,如果结果为空则输出 EMPTY
【样例输入 1
edda
【样例输出 1
EMPTY
【样例输入 2
sdfhhhhcvhhxcxnnnnshh
【样例输出 2
s
【评测用例规模与约定】
对于 25 % 的评测用例, | S | ≤ 10的三次方   ,其中 | S | 表示 S 的长度;
对于 50 % 的评测用例, | S | ≤ 10的四次方  
对于 75 % 的评测用例, | S | ≤ 10的五次方  
对于所有评测用例, | S | ≤ 10的六次方 S 中仅含小写字母。

试题 G: 全排列的价值

时间限制 : 1.0s
内存限制 : 512.0MB
本题总分: 20
【问题描述】
对于一个排列 A = ( a 1 , a 2 , · · · , a n ) ,定义价值 c i a 1 a i 1 中小于 a i 的数
的个数,即 b i = |{ a j | j < i , a j < a i }| 。定义 A 的价值为 n
i =1 c i
给定 n ,求 1 n 的全排列中所有排列的价值之和。
【输入格式】
输入一行包含一个整数 n
【输出格式】
输出一行包含一个整数表示答案,由于所有排列的价值之和可能很大,请
输出这个数除以 998244353 的余数。
【样例输入 1
3
【样例输出 1
9
【样例输入 2
2022
【样例输出 2
593300958
【样例说明】
1 3 构成的所有排列的价值如下 :
(1 , 2 , 3) : 0 + 1 + 2 = 3
(1 , 3 , 2) : 0 + 1 + 1 = 2
(2 , 1 , 3) : 0 + 0 + 2 = 2
(2 , 3 , 1) : 0 + 1 + 0 = 1
(3 , 1 , 2) : 0 + 0 + 1 = 1
(3 , 2 , 1) : 0 + 0 + 0 = 0
故总和为 3 + 2 + 2 + 1 + 1 = 9
【评测用例规模与约定】
对于 40 % 的评测用例, n 20
对于 70 % 的评测用例, n 5000
对于所有评测用例, 2 n 10的六次方  

试题 H: 技能升级

时间限制 : 1.0s
内存限制 : 512.0MB
本题总分: 20
【问题描述】
小蓝最近正在玩一款 RPG 游戏。他的角色一共有 N 个可以加攻击力的技
能。其中第 i 个技能首次升级可以提升 A i 点攻击力,以后每次升级增加的点数
都会减少 Bi (上取整 ) 次之后,再升级该技能将不会改变攻击力。
现在小蓝可以总计升级 M 次技能,他可以任意选择升级的技能和次数。请
你计算小蓝最多可以提高多少点攻击力?
【输入格式】
输入第一行包含两个整数 N M
以下 N 行每行包含两个整数 A i B i
【输出格式】
输出一行包含一个整数表示答案。
【样例输入】
3 6
10 5
9 2
8 1
【样例输出】
47
【评测用例规模与约定】
对于 40 % 的评测用例, 1 N , M 1000
对于 60 % 的评测用例, 1 N 10的四次方 , 1 M 10的七次方
对于所有评测用例, 1 N 10的五次方 1 M 2 × 10的九次方 1 A i , B i 10六次方

试题 I: 最长不下降子序列

时间限制 : 1.0s
内存限制 : 512.0MB
本题总分: 25
【问题描述】
给定一个长度为 N 的整数序列: A 1 , A 2 , · · · , A N 。现在你有一次机会,将其
中连续的 K 个数修改成任意一个相同值。请你计算如何修改可以使修改后的数
列的最长不下降子序列最长,请输出这个最长的长度。
最长不下降子序列是指序列中的一个子序列,子序列中的每个数不小于在
它之前的数。
【输入格式】
输入第一行包含两个整数 N K
第二行包含 N 个整数 A 1 , A 2 , · · · , A N
【输出格式】
输出一行包含一个整数表示答案。
【样例输入】
5 1
1 4 2 8 5
【样例输出】
4
【评测用例规模与约定】
对于 20 % 的评测用例, 1 K N 100
对于 30 % 的评测用例, 1 K N 1000
对于 50 % 的评测用例, 1 K N 10000
对于所有评测用例, 1 K N 10的五次方 1 A i 10的六次方

试题 J: 最优清零方案

时间限制 : 5.0s
内存限制 : 512.0MB
本题总分: 25
【问题描述】
给定一个长度为 N 的数列 A 1 , A 2 , · · · , A N 。现在小蓝想通过若干次操作将
这个数列中每个数字清零。
每次操作小蓝可以选择以下两种之一:
1. 选择一个大于 0 的整数,将它减去 1
2. 选择连续 K 个大于 0 的整数,将它们各减去 1
小蓝最少经过几次操作可以将整个数列清零?
【输入格式】
输入第一行包含两个整数 N K
第二行包含 N 个整数 A 1 , A 2 , · · · , A N
【输出格式】
输出一个整数表示答案。
【样例输入】
4 2
1 2 3 4
【样例输出】
6
【评测用例规模与约定】
对于 20 % 的评测用例, 1 K N 10
对于 40 % 的评测用例, 1 K N 100
对于 50 % 的评测用例, 1 K N 1000
对于 60 % 的评测用例, 1 K N 10000
对于 70 % 的评测用例, 1 K N 100000
对于所有评测用例, 1 K N 1000000 , 0 A i 1000000
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值