2022年6月安徽省Acm省赛试题

2022年6月安徽省Acm省赛试题

    • A 设备排列
    • B 堆集装箱
    • C 搜索航桥
    • D 太空供水
    • E 太空通勤
    • F 星球大战
    • G 相零选数
    • H 选左选右多
    • I玩捉迷藏
    • J 严格一致

需要AC Code的私,作为也参加了本次比赛的参赛选手,以上仅用作学习用途,版权归原创者所有。若本次收录的题目无意冒犯了贵司版权,请及时联系我,确认后,我会尽快删除。

A 设备排列

题目描述
太空飞船设备间里有一排位置可以放设备。现在有 N (1≤ N ≤100000)个位置,每个位置不放设备用0标识,放入设备用1标识。但是两个设备(标记为1)之间至少有 K (0≤ K < N )个空位(标记为0)。请问有多少种安全的设备摆放方案。答案对5000011取模。
输入格式
一行,输入两个整数 N 和 K 。
输出格式
一个整数(表示设备摆放的方法数,对5000011取模后的结果)。
输入样例
4 2
输出样例
6








B 堆集装箱

题目描述
小明香新闻发现最近航天事业获得令人振奋的进展,突然他想到了个主意。假如有编号为1到的 n ( ISn ≤30000)个初始呈平铺状态,相互间无叠放的集装箱运上太空,此时可以利用低重力来更省力的堆叠集装箱(后文我们称若干个集装箱堆叠在一起的情况为“箱堆”),但是小明发现还要查询某些集装箱的位置,这时候小明不太会了,希望你来帮他解决这个问题。
小明给出 P (1≤ P ≤100000)个指令,指令有两种:
1、移动( M x y) :将 x 号集装箱所在的箱堆直接堆叠到 y 号集装箱所在的箱堆上,构成一个更高的箱堆。
2.统计( Cx ):统计 x 号集装箱所在的箱堆中,在 x 下方一共有多少集装箱。
请你写程序帮小明解决这个问题。
输入格式
第1行输入 P ,之后 P 行每行输入一条指令.形式为“ M x y ”或者“ C x ”输入保证不会有将集装箱放在自身之上的指令。

输出格式
对于每个统计指令,输出其结果,每个结果一行。
输入样例
6
M 1 6
C 1
M 2 4
M 2 6
C 3
C 4

输出样例
1
0
2







C 搜索航桥

题目描述
天音四号与空饲站的对接令人兴奋,随着国家的航天事业的篷勃»展,空回站与空间站之间的联系愈发紧密,/为了以后能够知道哪些空面站可以相连,设现在有 N 个空间站,有 M 条航道相连,如果某条航道被废弃后, A 空间站无法到达 B 空间站,那么称这条航道为 A , B 空间站之间的航桥,现在我们想实时知道一些空间站之间有几条航桥。在询向的过程中,有些航道会被废弃掉。你能想出最快速的算法,找出航桥
吗?
输入格式
第一行 N , M 表示有 N 个空间站, M 条航道,1≤ N ≤30000,1≤ M ≤100000,询问数加删除数不多于40000。
接下来 M 行表示 M 条航道,每行两个整数,表示两个空间站有航道
相连。然后每行三个整数 C 、 A 、 B :如果 C =0表示 A 和 B 空间站之间的航道被永久删除;如果 C =1表示询问 A 和 B 空间站间有几条航桥;如果 C =-1则输入数据结束。保证空间站任意时刻都联通。
输入格式
对于每一个询问,给出航桥的数量,每次询问结果一行。

输入样例
5 5
1 2
1 3
3 4
4 5
4 2
1 1 5
0 4 2
1 5 1
-1

输出样例
1
3







D 太空供水

题目描述
空间站各舱室呈树状分布,一共有 N 个舱室,使用管道相连。经过统计得到了哪些太空舱现在有用水需求,目前需要给这些有需求的太空舱通水,但是初始只能在其中 M 个舱室安装水源。如果一个太空舱获得了水源,那么与它相连的太空舱可以花费1时间单位通过管道也获得水源。现在小明需要找出安装初始水源位置,使得在最短时间内,所有有
用水需求的太空舱都可以获得水源。
输入格式
第一行是两个整数 N , M 。(1≤ M≤N ≤300000)

接下来一行有 N 个整数0和1,其中第 i 个数为1表示编号为 i 的舱室有用水需求。

接下来 N -1行每行有两个数 A , B ,表示 A 和 B 之间有一条管道相连。

输出格式

一个整数,表示使所有有用水需求的太空舱得到供水的最短时间。

输入样例
72
1011011
13
23
34
45
56
57

输出样例

解释/提示
在3,5号太空舱安装初始水源。







E 太空通勤

题目描述
有 N 个空间站通过 M 个通道连接起来,第1条太空通道从太空站可开始,到太空站 b 结束,需要も个小时完成通行。对于需要在不同空间站工作的人来说,希望尽可能少的通过不同通道,以减少不可预知的时间开销。小明就限制自己每次出行最多通过 k 条不同通道。现在请你帮小明计算,从太空站5到 E 之间旅行时,最多经过 k 条通道,最短的通行时间是多少?
输入说明
第一行包括2个数字,分别表示 N 和 M (2≤ N ≤70,1≤ M ≤
10°):
接下来 M 行,每行包括3个整数,分别表示 a , b ,和 t ,(1 Saj , b ;≤ N ,1≤ t ≤10°);
之后一行包括2个正整数,分别表示 k 和 q (1≤ k ≤10,1S q ≤ N ),即最多通过 k 条不同的通道和査询次数;
接下来 q 行,每行2个整数(1≤ S , E ≤ N ),表示每次查询
的出发空间站和到达空间站。输出说明
输出每次通行计划对应的最短时间,占一仃。如果没有满足条件的通行线路,请输出﹣1。

输入样例1
4 7
1 2 1
1 4 10
2 3 1
2 4 5
3 2 2
3 4 1
4 3 2
1 3
1 4
4 2
3 3

输出样例1
10
-1
0
输入样例2
4 7
1 2 1
1 4 10
2 3 1
2 4 5
3 2 2
3 4 1
4 3 2
2 3
1 4
4 2
3 3
输出样例2
6
4
0







F 星球大战

输入格式
2035年 X 星人入侵,地球在经过詢期惨烈的战争后,研兄出
门射线武器,并打算在最终的决战。但是在大战中,要避免伤害到反牟
的战舰。
可以假设战场是一个二维的坐标系,射线武器安装在(0,0)的位
置,可以从一个方向射出射线,并消灭在与射线相交的所有战脱。给出
毎艘战舰的舰首和舰尾的坐标(为整数)。请你计算出最少而要多少认
射击可以在不击中友军的情况下,消灭所有敌军。

输入格式
第一行为 N 和 M ,分别代表友军和敌军的数目,0<= N , MK =10。
接下来 N + M 行,每行四个整数x1,y1,x2,y2用一条线段,(x1,y1)
(x2,y2)来描述一艘战舰的位置。前 N 行描述的是敌军,后 M 行描述的
是友军。-1000《=x1,x2,y1,y2<=1000,表示战舰的线段之间可能相
交,战舰也可经过原点,则任何的射击都会被消灭。

输入格式
可以消灭所有敌军而不伤到友军的情况,输出最少射击次数。否则,
输出 No solution
样例输入1
4 4
2 4 4 0
2 6 -2 -2
4 2 4 -2
6 8 -2 -4
4 6 -4 4
6 0 2 -4
-8 4 -8 0
4 4 6 2
样例输出1
2
样例输入2
2 2
3 2 1 1
-6 8 2 -4
5 5 6 2
3 2 1 1
样例输出2
No solution






G 相零选数

题目描述
给出一个数列,每次会从数列中挑选出一个数字,但规则是每次只
能选和0相邻的数字(不能选0),拿走一个数字后,将这个数子受成
0。现有两个玩家都采取最优策略,使自己最后获得数字的和为最大值,
揃出最后两位玩家的得分,优胜者将获得参观航天发射基地的门票。保
证这个数列初始时至少有一个数字为0。

输入格式
第一行,一个正整数 N ( N く1000000)。第二行为 N 个整数,用一个空格分隔, N 个整数和不超过2的64次方-1。

输出格式
输出数据是一行,包括两个整数,用一个空格分隔,表示两人最后的得分。
样例输入
8
1 2 0 3 7 4 0 9
样例输出
17 9







H 选左选右多

题目描述
航天博物馆中有一个互动游戏。给出 N 个数字( C1 、 C2 、 C 3… C8 )排成一排,现有 A 和 B 两个人轮流取数字,每次可以取当前剩余数字中最左侧或者最右侧之一并拿走。最终每个人分数是拿到的数字之和。分数较高者将获得航天纪念品一个。
游戏开始时, A 先取数字,两人都会按照最优策略来取数字,现在想知道 A 先手可以拿到最多的分数是多少?
输入格式
第一行:单个整数 N ,表示一共多少个数字,1≤ N ≤5000
第二行到第 N +1行:第 i +1行有一个整数 Ci ,1≤ Ci ;≤5000
输出格式
一个整数,表示如果双方都按最优策略杌游戏, A 先手可以得到的
分数。
输入样例
4
30
25
1O
35
输出样例
60
解释/提示
对于样例, A 最好的取法是先取35,然后 B 会取30, A 再取25, B 最后取10。






I玩捉迷藏

题目描述
小明和朋友们在航空博物馆玩捉迷藏,现在有 N 间房间连成一排,编号为1、2、3…N,其中某些房间里面有1个人(且不会超过1个),其它房间没有人。小明可以使用 Cij个航天纪念币让博物馆管理员告诉他 i、i+1… j 这些房子里人员总数的奇偶性。采取最优的询问策略,小明至少需要使用多少纪念币,才能准确找到哪些房子里有人(能够处理人员任意分布的情形)?
输入格式
第一行是一个整数 N (1≤ N ≤2000)。接下来 N 行,第 i 行有( N - i +1)
个数,代表Cu≤10的9次方,1≤ i ≤ j≤N 。
输出格式
输出一个整数,表示最少使用的纪念币个数。
输入样例
5
1 2 3 4 5
4 3 2 1
3 4 5
2 1
5
输出样例
7








J 严格一致

题目描述
小明在太空博物馆发现 n 个字符串 sl ,s2,. sn ,每个字符串由小写英文字母组成。在一次操作中,他可以选择一个字符串 si ,抹掉第个字符并将其附加到字符串的末尾。例如字符串“ coolming ”,他可以在一次操作中将其转换为字符串“ oolmingc ”。现在小明想知道:为了将所有字符串变为相同,需要做的最小操作次数是多少?
输入格式
第一行包含整数 n (1≤ n ≤50)——字符串的数量。之后 n 行,每行都包含一个字符串。所有字符串的长度相等,不超过50。
输入格式
最小操作的次数,以使所有字符串相等。如果没有解决方案,输出-1。

样例输入
abde
bdea
deab
样例输出
3

你可能感兴趣的:(#,ACM,算法,数据结构,c++)