牛客练习赛87 -A-中位数

该博客探讨了一种数组操作问题,其中需要进行kk次特定操作来改变数组,并求出操作后的中位数最小可能值。每次操作可以选择两个不同正整数i,ji,j,使ai=ai+ajai​=ai​+aj​,然后移除ajaj​。通过实例解释了算法思路,例如当k接近n-1时,中位数为所有元素之和。

中位数

时间限制:C/C++ 2秒,其他语言4秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld

题目描述 

给出长度为nn的数组a1,a2,...,ana1​,a2​,...,an​,做确切地kk次操作,每次操作选择两个不同的正整数i,ji,j使得ai=ai+ajai​=ai​+aj​,并将ajaj​从数组中删除。
kk次操作后序列的中位数最小可以是多少?
中位数:一个长度为mm的序列,它的中位数是将这mm数升序排列后第⌊m+12⌋⌊2m+1​⌋个数。

输入描述:

 

输入包含TT组测试用例,第一行一个整数TT

每组测试用例第一行两个整数n,kn,k

每组测试用例第二行nn个整数a1 a2 ... ana1​ a2​ ... an​

输出描述:

 

输出TT行第ii行为第ii组测试用例的答案。

示例1

输入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郭晋龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值