当前位置:文档之家› 安徽ACM省赛试题

安徽ACM省赛试题

2018年安徽省机器人大赛程序设计竞赛
目录A.数7
B.编译错误
C.做操的时候要排好队D.判重
E.最长上升字串
F.雄伟的城堡
G.然后打5
H.运货卡车
I.最大矩形框
J.数列分段
K.数数字
A.数7
时间限制: 3s
描述
求整数序列中位置L到位置R中一共有多少个7。

对于每个数7的个数的定义为,十进制各个位置上一共有多少个7,以及能够被7整除的次数。

输入
第一行是一个整数T,代表测试数据的组数。

每组数据中两个整数L,R。

其中T≤50,L<R<105。

输出
共T行,共有多少个7。

样例输入
样例输出
提示
第一组样例中1到10中,只有7被计数,它十进制下有7并且是7的倍数,所以被计数2次。

第二组样例中47有1个7,49可以被7整除2次,所以共被计数3次。

B.编译错误
时间限制: 3s
描述
在程序员编写程序的时候,通常会引用其他文件,而引用的文件也会引用其它的头文件。

但是出现循环引用的现象编译时便会报错。

例如A引用了B,B引用了C,C引用了A,那么就产生了循环引用(Circular reference)。

考虑另外一个情况,A引用了B和C,B引用D,C引用D,虽然D被引用了两次,但是没有出现循环引用。

输入
第一行是一个整数T,代表测试数据的组数。

每组数据中第一行是一个整数n,代表有多少个引用关系。

接下来n行每行有2个字符串a,b,用空格分隔,代表a引用了b。

其中T≤50,
n≤105,每个字符串长度不超过100。

输出
共T行。

若不会产生编译错误则输出Passed,否则输出Failed。

样例输入
样例输出
C.做操的时候要排好队
时间限制: 3s
描述
同学们在做早操时,应该按照身高从低到高排好队。

但是总是有人不好好排队,老师在审查时会对没有排好的队伍扣除一定的分数。

扣的分数被定义为,找到三个人Ai,Aj,Ak,其中i<j<k,分数为max(0,(Ai-Aj))+max(0,(Aj-Ak))。

找到一组i,j,k 使这个分数最大即是扣除的分数。

输入
第一行是一个整数T,代表测试数据的组数。

每组数据中第一行是一个整数n,代表有一共有多少个人。

第二行共有n个整数,代表n个人的身高。

其中T≤50,n≤105,每个数的大小不超过1000。

输出
共T行。

扣除的分数。

样例输入
样例输出
D.判重
时间限制: 3s
描述
小七初始有n个数的样本集。

现在又新加了m个数,他想知道这m个数是否已经在这n个数之中了。

但是他判断是否有重复的方式和常人有些不同。

对于样本集内的任意一个数x,他先将x二进制的第2, 5, 7, 10, 13, 14, 17, 18位取反,生成新的8个数。

例如x是7(00111),那么第一个数就是5(00101),第二个数是23(10111)......依次类推。

然后将他表格上这8个数的位置全部变为1(初始整个表格全部为0)。

判断重复时,若一个数x产生的8个数,在表格内全部为1,就认为这个数x和样本集内的数有重复,否则认为没有重复。

输入
输入T,代表T组数据。

每组数据初始输入n, m。

代表n个样本以及m个需要判断的数。

接下来n+m行是n个样本以及m个需要判断的数,样本在前。

对于这m个数,每个数输出yes 或者no。

m组数据相互独立,即这m个数都不会新加入到样本集内。

其中T≤50,
n,m≤105。

输出
共T行,每行共m个字符串,重复输出yes,否则输出no
样例输入
样例输出
E.最长上升字串
时间限制: 3s
描述
给定n个整数,对其进行m次查询。

每次查询是一个范围l到r,求出l到r的最长上升连续子串。

上升连续子串的定义为一个连续的子串且严格递增。

输入
第一行是一个整数T,代表测试数据的组数。

每组数据中第一行是一个整数n,m,代表有一共有n个人,m个查询。

第二行共有n个整数,接下来m行是m 次查询,每行两个整数l,r。

输出
共T行,每行m个整数,代表最长上升连续字串。

其中T≤50,m≤105,每个数的大小不超过109。

样例输入
样例输出
F.雄伟的城堡
时间限制: 3s
描述
在一个群岛上,有一个富可敌国的大富翁。

他打算在这个群岛上建造一个最大城堡,也就是群岛上最大的岛屿。

输入
第一行是一个整数T,代表测试数据的组数。

每组数据中第一行是两个整数n,m,代表地图的大小。

接下来n行每行共m个整数。

0代表海洋,1代表陆地。

其中T≤50,n,m≤200。

输出
共T行,最大的面积。

样例输入
样例输出
G. 然后打5
时间限制: 5s
描述
《炉石传说》是一款考验技(shen)术(chou)的电子游戏,即使你没有玩过这个游戏也没有关系。

《炉石传说》里有一张萨满卡牌叫做连环爆裂,它的效果是等概率的造成3-6点伤害。

而游戏获胜的条件是将对方英雄的血量全部打掉。

例如对方英雄还有5点生命值,你有1张连环爆裂,那么你获胜的概率为。

在本题中你无需考虑法力值消耗。

输入
第一行是一个整数T,代表测试数据的组数。

接下来的T行每行有2个整数n,h,n代表你一共可以释放的连环爆裂的个数,h代表敌方英雄的血量。

其中T≤50,n≤5000,h≤30000。

输出格式
共T行,每行是一个小数,保留到小数点后6位。

样例输入
样例输出
H.运货卡车
时间限制: 5s
描述
在一个运输公司中有很多的卡车,每个卡车都可以装载重量为w的货物。

有若干个需要运输的货物,每个货物都有一个质量m。

这个运输公司对于这些货物的装载方式策略是,每一次尽可能装更多质量的货物,在有多种可以装载最多质量的货物的方式时,会选择货物下标字典序最小的一组。

例如货物的质量为4 3 2 1,卡车能够装载的质量为5时,第一次会选择4 1而不是2 3。

输入
第一行是一个整数T,代表测试数据的组数。

每组样例中,第一行有两个整数n,w,代表有n个货物,每个卡车可以装载质量w的货物。

接下来一行有n 个数字,代表每个货物的质量。

其中T≤20,n,w≤1000。

每个货物的质量不会超过w。

输出
共T行,输出所需要的卡车数量。

样例输入
样例输出
I.最大矩形框
时间限制: 5s
描述
有一个01的大矩阵,找到一个最大由1围成的矩形框的面积。

输入
第一行是一个整数T,代表测试数据的组数。

每组样例中,第一行有两个整数n,m,代表有大矩阵的大小,接下来是一个由01组成的大矩阵。

其中T≤10,n,m≤200。

输出
最大由1围成的矩形框的面积。

样例输入
样例输出
J.数列分段
时间限制: 3s
描述
有n个整数,分成m段。

使每一段的和的最小值尽可能的大。

输入
第一行是一个整数T,代表测试数据的组数。

每组样例中,第一行有两个整数n,m,接下来一行是n个整数。

其中T≤50,n,m≤105
输出
尽可能的大的每一段的和的最小值。

样例输入
样例输出
K.数数字
时间限制: 3s
描述
Alice和Bob进行一款质数游戏,Alice先说一个质数或者1,Bob再加上一个质数或者1。

不能超过目标数字,谁先喊道目标数字就获胜。

Alice和Bob都足够聪明,都会采用最有策略。

输入
第一行是一个整数T,代表测试数据的组数。

每组样例中,第一行有一个整数n,代表目标数字。

T≤20,n≤1018
输出
共T行,输出Alice win或者Bob win。

样例输入
样例输入。

相关主题