杭电校第十七届程序设计竞赛暨2017省赛集训队选拔赛

1001

奇妙骰子

Time Limit: 2000/1000 MS(Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 0    Accepted Submission(s): 0

Problem Description

小黑和小白在玩卡牌游戏:每人每次选一张牌,比比谁的点数大。
但是小白有一个奇妙骰子,它能随机地让小白的点数增大0到n点(等概率)。
现在小白想知道自己的点数比小黑大的概率是多少。

 

 

Input

输入包含多组测试数据。
每组数据占一行,包含三个正整数,依次分别代表小白的点数a,小黑的点数b,奇妙骰子最大能增大的点数n。
1<=a,b,n<=1000000000

 

 

Output

每组数据请输出一个浮点数,代表小白的点数比小黑大的概率。
每组输出占一行,保留3位小数。

 

 

Sample Input

2 2 2

 

 

Sample Output

0.667

 

 

 

 

1002

品味

Time Limit: 2000/1000 MS (Java/Others)    MemoryLimit: 32768/32768 K (Java/Others)
Total Submission(s): 0    Accepted Submission(s): 0

Problem Description

程序员小明是程序员中的异类——因为他不是单身狗!
但最近他也有不为人知的苦恼,原来在七夕节约会的时候,他被女朋友吐槽着装品味太低!这让他自尊心大受伤害,连敲代码都心不在焉,代码BUG也明显增多,还被领导叫去批评了。被批评过后,小明痛定思痛,他决定来一趟品味提升之旅。

旅途是这样的——
有N个服装店,分别在N个地铁站的旁边,(每个地铁站旁有且仅有一个),每个服装店有逼格值A。小明搭地铁从1号站坐到N号站,沿途依次访问这些服装店,每拜访一个服装店的时候,他首先能增加等同于这个服装店逼格值的品味值,接着,小明会仔细回味之前拜访过服装店之间的异同(不包括当前拜访的),举一反三,总结归纳,小明的品味值“又”得以增加——增加数值等同之前的服装店所有逼格值之和的平均值。
现在想知道:这样访问N个服装店后,问小明最后的品味有多高?
注:小明品味的初始值为-1000

 

 

Input

输入数据第一行是一个正整数T,表示测试数据有T组。

接下来的每组数据:
第一行一个整数N,表示N个服装店;
接下来N行,每行包含2个整数X, A,整数X代表第X个地铁站,整数A为该地铁站对应服装店的逼格值。
1<=N<=20000
1<=X<=N,且X保证都不相同。
0<=A<=1000

 

 

Output

对于每组数据,输出一行。
每行仅输出一个浮点数,保留2位小数,代表小明最后的品味值。

 

 

Sample Input

1

3

3 2

1 4

2 3

 

 

Sample Output

-983.50

 

 

1003

别睡觉啦,起来嗨

Time Limit: 2000/1000 MS(Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 0    Accepted Submission(s): 0

Problem Description

王尼玛是一名快乐的程序员,然而他最讨厌的事情就是起床了>_<。
所以他要定好多好多闹钟(n个,闹钟之间相互独立,时间可能相同),这些闹钟一共响足够多次时(m次)他才会起床。

现在告诉你每个闹钟第一次响的时刻,再响的间隔(t分钟),让你输出王尼玛要几点几分时才会起床 :)

(提示:再响间隔为t,意味着闹钟第i+1次响的时刻与第i次响的时刻相差t分钟)。

 

 

Input

输入包含多组测试用例。

每组数据:
第一行两个整数n,m,其中n表示王尼玛定闹钟的个数,m表示让王尼玛起床必须响过多少次闹钟。
第二行一个整数t,表示闹钟再响的间隔为t分钟。
对于接下来n行,第i行一个时间hh:mm,表示第i个闹钟第一次响的时刻。

数据保证——每个时刻都以hh:mm的形式给出(hh代表小时,mm代表分钟,0<=hh<24,0<=mm<60)。
数据保证——王尼玛不会睡到第二天:P~
数据保证——1<=n<=1000,1<=m<=500000,1<=t<=30

 

 

Output

每组数据输出一行,含有一个时间,格式为hh:mm,表示王尼玛起床的时刻(必须为合法的24小时制时刻)。

 

 

Sample Input

1 10

30

00:00

3 3

5

06:04

06:00

06:08

 

 

Sample Output

04:30

06:05

 

1004

这顿饭要怎么办

Time Limit: 2000/1000 MS(Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 0    Accepted Submission(s): 0

Problem Description

王尼玛是一名幸福的程序员,因为他每天早上从家里出门后,都可以在楼下的小吃店享受美味的早餐。

今天,王尼玛又吃了很多好吃的。不过不同的是——当他要结账的时候,突然发现——忘了带钱!没错,忘了带钱!而且——信用卡、网银、支付宝统统用不了!这可急坏了王尼玛!

然而,这家小吃部有一个奇怪的规定(只有王尼玛知道)——如果在王尼玛结账的时候(王尼玛可以在自己进入店之后的任意时间选择结账),店里顾客的名字长度之和(算上王尼玛自己)恰好是k的倍数时,可以申请免单。

现在告诉你今天小吃店开店后的顾客人流信息——
请判断今天王尼玛是"吃不了就兜着走^_^"还是"吃不了兜着走T_T"。

 

 

Input

输入包含多组测试用例。

每组数据:
第一行是两个整数n和k
其中:
n表示今天小吃店开店后的顾客人流信息数(按照时间顺序给出)
k表示如果在王尼玛结账的时候,店里顾客的名字长度之和(算上王尼玛自己)恰好是k的倍数时,王尼玛可以申请免单。

接下来n行,每行两个字符串,中间用一个空格隔开。
每行的第一个字符串为"in"或"out",表示这个人进店还是结账离开(可认为动作瞬间完成)。
每行的第二个字符串为一个全为小写字符的字符串(长度在1~20之间),表示这个人的名字。
王尼玛的名字叫"wnm"(不含引号),保证这个世界上只有一个人叫"wnm"。

数据保证—— 每个人都是先in后才会out
数据保证—— 输入中一定含有唯一一个"in wnm"且不会含有"out wnm"
数据保证—— 1<=n<=100000,1<=k<=100

 

 

Output

每组数据输出一行——
如果王尼玛可以吃不了就兜着走,输出"^_^ x"(不含引号,x前有且仅有一个空格),其中x表示王尼玛最早可以在第几条人流信息出现后免单结账。
如果王尼玛要吃不了兜着走了,输出"T_T"(不含引号)。

 

 

Sample Input

2 3

in wnm

in tangmaru

4 23

in tangmaru

in wnm

out tangmaru

in zhangquandan

4 3

in a

in a

in wnm

in b

1005

数论小白

Time Limit: 2000/1000 MS(Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 0    Accepted Submission(s): 0

Problem Description

小白最近在研究数论,已经研究了三天三夜。

这天,小黑闲着无聊,于是想考考小白,就给他出了这样一个题——
形如ax+by+cz=n (a,b,c,n都是已知正整数)的方程,是否有非负整数解(x>=0 并且 y>=0 并且 z>=0)?

小白看傻了,于是来求助你了。

 

 

Input

输入数据第一行是一个正整数T,代表输入组数。
然后是T组数据:
每组一行,输入四个正整数,依次分别代表a,b,c,n,其中:
T<=30
1<=a,b,c,n<=500000

 

 

Output

对于每组数据请输出一行。
有解输出"Yes"(不带引号),无解输出"No"(不带引号)。

 

 

Sample Input

2

1 2 3 6

3 5 6 4

 

 

Sample Output

Yes

No

1006

益智游戏

Time Limit: 2000/1000 MS(Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 0    Accepted Submission(s): 0

Problem Description

王尼玛是一名努力的程序员。
午餐的时候,他看到排起的队伍很长,作为努力的程序员,他掏出手机,玩起了一个益智游戏。

游戏是这样的,给你n个正整数,从a[1]到a[n],对于这n个数中每个数,都可以不断对自身做平方运算。
也就是说,对于任意一个a[i](1<=i<=n),我们都可以使其变成a[i],a[i]^2,a[i]^4,a[i]^8,...,a[i]^(2^p)(p属于非负整数)中的任意一个。

现在想要知道:如何决定每一个数的大小,从而使得最终 "这n个数中最大的数减最小的数的差值"尽可能小呢?

请你帮王尼玛输出这个尽可能小的差值。

 

 

Input

输入包含多组测试用例。

每组数据:
第一行是一个整数n,表示数的个数。
接下来一行是n个正整数,分别表示a[1],a[2],...a[n].

数据保证——
1<=n<=100000
1<=a[]<=10^9

 

 

Output

每组数据请输出一行,包含一个整数,表示如题所描述的尽可能小的差值。

 

 

Sample Input

2

2 4

3

3 4 5

2

2 15

 

 

Sample Output

0

2

1

 

1007

打野顺序

Time Limit: 20000/10000 MS(Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 0    Accepted Submission(s): 0

Problem Description

cc和ss是好朋友。
cc很擅长玩rpg游戏,ss却怎么也玩不好,便嚷着让cc传授给他游戏技巧。于是cc给ss上了rpg游戏的第一课——打野(消灭野生生物,获得经验金钱)。
游戏中ss可以控制一个英雄,因为是教练模式,于是可以认定英雄的血量无限,英雄的攻击力为att,英雄在一次打野的时候需要同时对付n个野怪。每个野怪也有一定的血量和攻击力。
战斗采取回合制模式,每回合ss的英雄先采取行动,可以选择攻击任意一只野怪,然后所有存活状态下——即血量为正数的野怪可以攻击ss的英雄。
现在请你帮cc指点下ss,如何选择每回合的攻击对象,才可以使的ss在消灭所有野怪之后,损失的血量尽可能低呢?

 

 

Input

输入包含多组测试数据,请处理到文件结束。

对于每组数据——
第一行,包含两个整数n,ata,分别代表怪物数、英雄攻击力。
接下来n行,每行两个整数h[i],a[i],分别表示第i个怪物的血量和攻击力。

数据保证——
1<=n<=10
1<=h[], a[], att<=10000

 

 

Output

每组数据输出一行,包含一个整数,表示在消灭所有的野怪之后,损失的最小血量。

 

 

Sample Input

1 10

20 5

1 10

21 5

2 10

20 5

21 5

 

 

Sample Output

5

10

25

1008

数字迷

Time Limit: 2000/1000 MS(Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 0    Accepted Submission(s): 0

Problem Description

kirito是个数学迷,他对数字非常感兴趣。
最近,他提出了“数的营养价值”这一概念——所谓一个数的营养价值,是指这个数的二进制位为1的个数。
比如,3的二进制是11,有2个1,那么3的营养价值是2;
10的二进制是1010,那么10的营养价值是2。

一天,kirito找到了n个数,他很想知道这n个数的营养价值总和是奇数还是偶数。

 

 

Input

输入数据第一行是一个正整数T,代表输入数据的组数。
下面T组输入,每组输入如下:
第一行输入一个n,第二行输入n个数x,每两个数之间用空格隔开。
1<=T<=50
n<=30000
0<=x<=2147483647

 

 

Output

每组数据输出一行;
如果营养价值总和是奇数,请输出"odd"(输出不带引号),否则请输出"even"(输出不带引号)。

 

 

Sample Input

1

3

1 2 3

 

 

Sample Output

even

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值