AGGRCOW - Aggressive cows


Farmer John has built a new long barn, with N (2 <= N <= 100,000) stalls. The stalls are located along a straight line at positions x1,...,xN (0 <= xi <= 1,000,000,000).

His C (2 <= C <= N) cows don't like this barn layout and become aggressive towards each other once put into a stall. To prevent the cows from hurting each other, FJ wants to assign the cows to the stalls, such that the minimum distance between any two of them is as large as possible. What is the largest minimum distance?

Input

t – the number of test cases, then t test cases follows.
* Line 1: Two space-separated integers: N and C
* Lines 2..N+1: Line i+1 contains an integer stall location, xi

Output

For each test case output one integer: the largest minimum distance.

Example

Input:

1
5 3
1
2
8
4
9

Output:

3

Output details:

FJ can put his 3 cows in the stalls at positions 1, 4 and 8,
resulting in a minimum distance of 3.


hide comments
xinnix: 2016-06-19 13:36:28

Phew!! Topcoder tutorial wasn't easy to understand...
Hint: Or summary of topcoder tut is that:
In that example if you take the min distance 4 then you won't be able to put all cows in shed....

mkfeuhrer: 2016-06-17 15:45:43

awesome ques on binary search implementation .....learnt a lot !! binary search with optimizations and technique ;-) topcoder tutorial gave a new vision of this :-) AC :-)

sonali9696: 2016-06-14 14:51:48

@krototye: ATQ, C can't be less than two so your test case is not possible

threat_: 2016-05-19 16:04:57

1000 000 000, but it's not important.

Last edit: 2016-05-19 16:07:48
krototype: 2016-05-18 17:29:16

can anybody tell output for case
1
2 1
1
5
if this testcase is possible

Last edit: 2016-05-18 18:05:48
vickyyo: 2016-05-16 23:06:42

ac .....was stuck b4, but topcoder tutorial really roks!!!! :)

Dushyant Singh: 2016-05-13 21:25:22

int is sufficient in c++

dinkar: 2016-05-04 22:20:58

Nice problem to learn how binary search can be applied.

atif_11: 2016-05-04 20:56:25

Great problem.....AC in first pass

vstepano: 2016-05-04 18:23:24

If you have no idea how to use binary search for this problem don’t waste your time trying to figure it out on your own.
As the guys and gals said in the comments before this - go to the Topcoder binary search tutorial
https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/

Then when you are done try out the test cases that
@manas0008 posted on 2016-01-25 11:23:11

If you still have problems look carefully at the parts of the program that you tied to optimize. The bug is probably there.


Added by:Roman Sol
Date:2005-02-16
Time limit:2s
Source limit:10000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All
Resource:USACO February 2005 Gold Division