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
Yogesh Biyani: 2016-08-10 05:45:41

Last edit: 2016-08-10 05:46:25
wsumeet: 2016-08-06 09:31:33

My First question on SPOJ. Took me whole day to figure out everything (Topcoder article was ultimate!!). But, totally worth the wait. AC in 2nd attempt. Special thanks to @manas0008 for your test cases. Helped me realize, I was off by 1. Thanks :-)

Last edit: 2016-08-06 09:32:03
subhasmita sahoo: 2016-07-28 07:10:47

Excellent question!!!!!

saurabh789: 2016-07-07 15:39:52

nice problem ,ac in one go xD

adichd123: 2016-07-03 16:25:51

Worth the time! Nice implementation! That tutorial was indeed good.

baadshah_: 2016-06-23 11:52:08

finally AC!!!

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

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