2016年“京胜杯”安徽省大学生程序设计大赛

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2016年‚京胜杯‛安徽省大学生程序设计大赛

全国大学生信息安全竞赛安徽省赛区组委会安徽省大学生程序设计大赛技术委员会

2016年5月24日合肥

目录

A.砝码称重

B. 阵前第一功

C. 箭无虚发

D. 梯田AGAIN

E. 转啊转

F. 吃在工大

G. 木条染色

H. 单身晚会

I. 恶魔A+B J. YZK的大别墅K. 纸上谈兵

A. 砝码称重

Time Limit: 1000 MS Memory Limit: 65536 KB

题目描述:

小明非常喜爱物理,有一天,他对物理实验室中常用的弹簧拉力计产生了兴趣。实验室中有两种质量不同的砝码,小明分别用a个第一种砝码放在弹簧拉力计上和b个第二种砝码放在弹簧拉力计上,假设每增加单位重量的砝码,弹簧拉力计的长度增加1,那么两次称量弹簧拉力计的长度差是多少呢?(假设拉力计不发生非弹性形变)

输入格式:

第一行一个整数T,表示有T组数据。

之后T行,每行数据包含四个正整数,分别表示第一种砝码重量a,第一种砝码数量b,第二种砝码重量c,第二种砝码数量d。

T<25

0

输出格式:

对于每组数据,输出一个正整数,表示弹簧拉力计的长度差值。

输入样例:

3

1 2 3 4

1 4

2 2

1 3

2 1

输出样例:

10

1

注解:这是一道简单题,注意条件T<25

0

B. 阵前第一功

Time Limit: 1000 MS Memory Limit: 65536 KB

题目描述:

A国每个国民都有一定战斗力,每年国家都要对人民的战斗力进行一次排序统计,他们的排序规矩是相同战斗力的排名一样,而且只占一个排序名额。比如,有5个人:100,100,90,90,70. 两个100的并列第一,称为第一战斗力,两个90的并列第二,称为第二战斗力,依次类推……现在你想查询第K战斗力是多少

输入描述:

先输入一个整数T,表示T(T<50)组数据。

每组第一行一个正整数N(1000>N>0),表示表示有N个人。接下里一行N 个正整数ai(2^30>=ai>=0),表示每个人的战斗力。

接下输入一个正整数K(N>=K>0)。(保证输入都合法)

输出描述:

输出第K战斗力,输出占一行

输入样例:

2

5

100 90 90 100 70

2

10

1 2 3 3 3 400 3 4 3 1

4

输出样例:

90

2

注解:这是一道简单题,用简单的排序算法就可以。

C. 箭无虚发

Time Limit: 1000 MS Memory Limit: 65536 KB

题目描述:

JH苦练10年,终于成为了一个神箭手,在下山之前,大师兄YZ不放心,想考验他,只给他一定时间t,同时给他n支箭,最终根据他的表现,考虑他是否能下山。

对于每发一次箭,YZ给他4种成绩(优、良、中、差),JH有三种拉弓以及瞄准时间a ,b,c(a>=b>=c)分别能拿优,良,中等级,如果不拉弓不瞄(直接射),只能拿差(不能中靶)了。

现在JH想知道,在保证自己弹无虚发(不获得差)的情况下,最多能拿多少个优。

如果JH不能做到弹无虚发,输出Oh,my god!

输入描述:

输入数据包含T组:

对于每组数据,第一行为一个整数n,表示总共有n支箭。

0

之后n行,每行包含三个数字a,b,c,分别表示拿对应等级所需要花的时间。(0

之后一个数字t,表示JH有考核总时间为t

(0<=t<=1000000)

输出描述:

对于每组输入,如果JH能箭无虚发,则输出一个数字x,表示最多能拿到的优的数量。如果不能,则输出Oh,my god!

输入样例:

3

1

3 2 1

1

2

3 2 1

3 2 1

4

2

3 2 1

3 2 1

1

输出样例:

1

Oh,my god!

注解:简单题,贪心算法,每次总是先考虑拿优(但是为了保证每次都不脱靶,因此,如果有n支箭,就先从总的考核时间扣掉每一个c,如果总的考核时间不够扣,则输出‚OMG‛,否则再把评分标准降为2,1,0后)。

D. 梯田AGAIN

Time Limit: 1000 MS Memory Limit: 65536 KB

题目描述:

大家还记得去年的梯田吗?土豪YZK在一块小岛上有着一大片n*m的梯田,每块1*1的田地都有它的高度。奴隶们不甘被YZK剥削,他们联合起来决定发动一场海啸淹掉YZK的部分梯田。

奴隶们去年尝试了一下,结果发现,由于土质太过松软,水能够透过土地渗入到相邻的梯田,即对于海啸高度h,梯田中所有小于等于h的土地都会由于土质松软而被被淹没。

现在给你一个n*m的矩阵,代表梯田中每块田地的高度。然后给定q个询问,每个询问给定一个海啸高度h,问在此高度下,不被淹没的梯田数量是多少。

输入格式:

第一行一个整数T,表示测试数据组数。

对于每组测试数据:

第一行三个数字n,m,q,表示梯田的行数,列数和询问数。

之后n行,每行m个数字,表示每块田地的高度,梯田高度不大于1000000。

之后q行,每行给出一个海啸高度h,问大于这个高度的梯田有多少块。

0

输出格式:

对于每个询问,给出一个整数,表示大于这个海啸高度的梯田数量。

输入样例:

2

2 2 2

1 2

3 4

2

3

2 3 3

1 2 3

3 4 5

4

5

输出样例:

2

1

6

1

相关文档
最新文档