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?
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
For each test case output one integer: the largest minimum distance.
1 5 3 1 2 8 4 9
FJ can put his 3 cows in the stalls at positions 1, 4 and 8,
resulting in a minimum distance of 3.
I recommend first do book allocation problem and here is its explanation:
I actually saw a solution to solve this problem but this problem just tells you to what extent binary search can be used
The concept which is applied in this problem is mind blowing!!
One hell of a problem! Took me one entire day, but I'm happy that at the end of the day I could learn something.
In the example, why can't I put a cow in 9? Then the largest minimum distance would be 4? Or I am not getting the problem?
Man that's some god tier problem. Really helpful for beginners like me.
also remember to put an endl in C++ when printing output. Wasted time debugging such an obvious thing to get an accept!! :D otherwise a very good problem to practice binary search implementation.
Even with binary search method, in JAVA I got Time Limit Exceed(TLE) error. Can anyone help me?. I applied binary search on gap array.