少儿编程竞赛 智算之道第一二三场初赛全部试题.docx
- 文档编号:30126442
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:11
- 大小:18.78KB
少儿编程竞赛 智算之道第一二三场初赛全部试题.docx
《少儿编程竞赛 智算之道第一二三场初赛全部试题.docx》由会员分享,可在线阅读,更多相关《少儿编程竞赛 智算之道第一二三场初赛全部试题.docx(11页珍藏版)》请在冰豆网上搜索。
少儿编程竞赛智算之道第一二三场初赛全部试题
智算之道2020初赛第一场试题
T1排队
小A现在站在一个n个人的队伍里排队,他们的编号依次为1∼n,现在她面前有m个窗口,其中第i个窗口会给出一个数字ai,然后将队伍中所有编号为ai倍数的人带出队伍,请问最后队伍中还剩下多少个人?
输入格式
第一行两个用空格隔开的整数分别表示n,m
第二行m个用空格隔开的整数,其中第i个代表ai
输出格式
输出一个整数,代表剩下多少个人
数据规模与约定
对于30%的数据,1≤n≤100,1≤m≤10
对于60%的数据,1≤n≤1000,1≤m≤10
对于100%的数据,1≤n≤100000,1≤m≤100,1≤ai≤n
样例输入
103
345
样例输出
3
T2开关
小B面前有n个开关,开始时第i个开关的状态是ai,其中ai=1表示第i个开关是开的,ai=0表示第i个开关是关的。
现在小B获得了一种魔法,他可以进行若干次操作,每次操作可以选择一个数x,然后把x号开关及其之前的所有开关状态反转(开变关,关变开),请问小B最少需要多少次操作才能使所有开关都变为关的状态。
输入格式
第一行一个整数表示n
第二行为一个长度为n的01字符串,即每一位只会是0或者1
输出格式
输出一个整数,表示最少需要多少次操作才能使所有开关都变为关的状态
数据规模与约定
对于30%的数据,1≤n≤20
对于60%的数据,1≤n≤2000
对于100%的数据,1≤n≤200000
样例输入
4
1001
样例输出
3
T3字符串
给定两个字符串S和T,它们都只由小写字母组成。
现在请计算出字符串S的本质不同的排列中有多少种是字符串T的子串。
本质不同,就是看起来不同,例如aab有3种本质不同的排列aab,aba,baa。
输入格式
第一行有一个字符串S
第二行有一个字符串T
输出格式
输出一个整数表示字符串S的本质不同的排列中有多少种是字符串T的子串
数据规模与约定
对于30%的数据,1≤∣S∣≤5,1≤∣T∣≤200
对于60%的数据,1≤∣S∣≤2000,1≤∣T∣≤2000
对于100%的数据,1≤∣S∣≤200000,1≤∣T∣≤200000
样例输入
aab
abacabaa
样例输出
2
智算之道2020第二场初赛试题
T1声控灯
小明正在上楼梯,当小明逐渐接近某层楼的时候,这层楼的声控灯检测到小明的脚步声便会亮起来,当小明逐渐远去的时候,声控灯由于一段时间内没检测到声音又会灭下去。
由于小明是匀速上楼的,而且他的速度把控得刚刚好,脚步声的音量也十分恰当,使得灯的亮灭呈现出这样的状态:
他当前所在的楼层的声控灯是亮起的,他即将抵达的下一层楼的声控灯是亮起的,他刚刚离开的那层楼的声控灯也是亮起的。
现在你站在楼的外面,通过窗户看到了灯的亮灭状态,请推断小明现在在几楼?
输入格式
每个测试点包含以下内容:
第一行给出一个整数T,表示接下来给出T组测试数据
每组测试数据包含两行
第一行包含两个数n,m,表示这栋楼一共有n层,当前有m盏灯是亮起的,而其余灯都是熄灭的
第二行包含m个整数,这些整数按照从小到大的顺序给出亮起的灯的序号
保证输入数据是符合实际情况的
输出格式
输出T行,每行包含一个数字,按照输入的顺序依次给出每组测试数据的答案。
如果答案
不确定,请输出-1
数据规模与约定
对于50%的数据,1≤T≤10,3≤n≤100,m=3
对于100%的测试点,1≤T≤1000,1≤n≤109,1≤m≤3
样例输入
2
53
123
52
12
样例输出
2
1
T2构造字符串
给定若干个小写英文字母,请你用这些英文字母组成nnn个字符串,字符串可以是空串。
要求这nnn个字符串的最长公共前缀最长。
求出这个最长的长度。
所有字母都要用完,且每个字母只能用在一个字符串里。
名词解释
前缀,是指一个字符串从第一个字符开始的连续若干个字符组成的字符串。
前缀可以为空串。
比如字符串"aab"的前缀有四个,分别是"","a","aa","aab"
我们说一个字符串sss是某些串的公共前缀,当且仅当这个串是每个字符串的前缀。
每一个公共前缀都是一个字符串,是字符串就有长度。
当nn个串都确定下来的时候,这n个串的所有公共前缀也就确定下来了,而且可以证明公共前缀的数目是有限的,在这有限个公共前缀中,有一个公共前缀的长度是最长的,这个前缀就是最长公共前缀。
举个例子,假设现在有三个串:
abbc
abbde
abbe
这个三个串的最长公共前缀是"abb",长度为3
再举个例子,假设现在有四个串:
abbd
bbd
abbd
abb
那么这四个串的最长公共前缀是"",长度为0
输入格式
输入共有两行
第一行是一个整数n,表示字符串的数量
第二行包含26个非负整数。
从前往后依次表示你拥有字母a的数目,字母b的数目,.........,字母z的数目。
输出格式
输出一个非负整数,表示答案
数据规模与约定
对于30%的数据,除了字母a之外其它字母的数目都为0
对于100%的数据,2≤n≤109,每种字母的个数也不超过109
样例输入
2
33000000000000000000000000
样例输出
2
样例解释
在第一个样例中,你拥有3个字母a和3个字母b,可以构造这样的两个串:
"aba","abb",这样最长公共前缀的长度是2。
可以证明不存在更优秀的方案
样例输入2
2
11000000000000000000000000
样例输出2
0
样例解释2
在第二个样例中,你拥有1个字母a和1个字母b,无论如何构造两个串,都无法产生非空的公共前缀,因此答案是0
T3情报战
现在我方已经查明,敌人通信所使用的加密方式依赖于一个长度为n的数列,只要得知了这个数列中每个数的值,我方便可破解敌方的通信。
通过深入敌人内部的内线人员的艰苦奋斗,我方逐渐获得了一些有用的情报,通过这些情报,整个数列正在被不断地破解。
先后有m条情报被得知,每条情报是以下两种情况之一:
情况1:
知道了数列中第x个数的值
情况2:
知道了数列中第x个数和第y个数的和
每得知一条情报,我方都试图破解数列中元素的值
作为情报部门核心技术人员的你,请编程实现如下功能:
每次得知一条新情报,你都要计算当前已经能够确定出数列中的多少个数了
你比较笨,对于情况2这种情报,只能在已知其中一个数的情况下推出另一个数,不能通过若干情况2的情报列方程求解
输入格式
第一行,两个正整数n,m
接下来m行,每行的第一个数是type。
如果type=1,则接下来跟着一个整数x,表示得知了数列中第x个数的值;如果type=2,则接下来跟着两个空格隔开的整数x,y表示得知了第x个数和第y个数的和
输出格式
输出m行,每行包含一个非负整数,第i行的非负整数表示在得知了前i条情报之后数列中已经能够确定的数的数量
数据规模与约定
对于20%的数据,1≤n,m≤10,且只有第一种情报
对于50%%的数据,1≤n,m≤5000
对于100%的数据,1≤n,m≤3×105
可能会有重复的情报,也可能出现x=y的情况
样例输入
54
11
12
223
213
样例输出
1
2
3
3
智算之道2020第三场初赛试题
T1水杯
小D有一个能显示温度的杯子.其原理是杯盖上的一个传感器.只有在杯子内的水的体积大于等于某个数LL的时候传感器才能显示水温,并且如果水温不在[A,B]内传感器也无法显示水温.
注意,这里温度对水的体积没有影响
初始水杯为空,有n次操作,操作分为三种:
1x表示把水温变成x.
2x表示把水的体积变成x.
3查询传感器的显示情况.如果不能显示水温输出GG,否则输出水温.
输入格式
第一行四个整数n,L,A,B,含义如题目所示.
接下来n行,每行一个整数opt或两个整数opt,x,表示执行操作opt.
输出格式
对于所有操作3输出结果,每行一个答案.
数据规模与约定
对于100%的数据,1≤n≤1000,−273≤A≤B≤100,1≤L≤1000,1≤opt≤3.
对于操作1,−273≤x≤100;对于操作2,1≤x≤1000.
样例输入
5213
15
23
3
12
3
样例输出
GG
2
T2鳖
Alice和Bob在打扑克.
有一副点数为1⋯n的扑克牌,除了两种点数只有三张牌以外,其余的点数都有四张牌,点数相同的牌认为是相同的.给出一个牌的顺序,Alice和Bob轮流按顺序摸牌,Alice先手,当某个人新摸到的牌已经在Ta的手牌中存在时,把这两张牌同时从Ta的手牌中移除.注意手牌的顺序是摸牌的顺序.
摸完牌后,从Alice开始,重复以下过程:
如果有人没有手牌了,那么没有手牌的人获胜,结束.
计数器cnt加一
把对方的第一张手牌放到自己的手牌中,使其成为自己的最后一张手牌.如果该牌之前已在自己的手牌中出现过,那么把这两张牌同时从自己的手牌中移除.
由对方继续操作.
给出牌的顺序,求出cnt的值.可以证明在有限步内游戏一定会结束.
输入格式
第一行一个整数nn,表示点数为1\cdotsn1⋯n.
第二行4n-24n−2个正整数,表示牌的顺序.保证恰好有两种点数出现了三次,其余点数出现四次.
输出格式
一行一个整数表示cnt的值.
数据规模与约定
对于50%的数据,3≤n≤100。
对于100%的数据,3≤n≤100000。
样例输入
5
111122223333444555
样例输出
1
T3顺序安排
给定一棵有根树,对于给定的树求出对应的一种排列使得代价和最小。
对于一种排列计算代价方式如下
给定常数k。
a的父亲在序列中的位置是x,a在序列中的位置是y。
a的儿子节点必须在a之后出现。
a的父亲在a之前出现,代价是k×(y−x)。
特殊的,容易看出,树根只能放在1号位,则代价是k。
只需要输出最小代价和即可。
输入格式
第一行两个正整数n和k。
接下来一行n−1个正整数,代表2∼n每个节点的父节点编号。
输出格式
一行,输出最小代价和。
数据规模与约定
对于10%的数据,22≤n≤10。
对于另外40%的数据,保证是一条链。
对于100%的数据,2≤n≤600000,1≤k≤2×106
样例输入
52
1133
样例输出
14
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 少儿编程竞赛 智算之道第一二三场初赛全部试题 少儿 编程 竞赛 第一 二三场 初赛 全部 试题