INBOX - India in Box
There is a well-known challenge in India. The challenge is as follows:
A merchant had some boxes. The boxes had weight and cost. He wants to give K boxes to one guy and the rest to other guy. Each guy has an average that is calculated by taking (Sum of Weights) / (Sum of Costs) of this guy. He wants to know what the smallest possible sum of the averages of the two guys he can achieve by making the distribution of the boxes.
Your task is to solve the challenge.
Input
The input contains several test cases. A test case begins with a line containing two integers N and K (1 <= K < N <= 100) representing the total number of boxes and the value of K, respectively. The next N lines contains two integers each, wi and ci (1 <= wi, ci <= 50), indicating the weight and cost of the ith box, respectively.
The last test case is followed by a line containing a single 0.
Output
For each test case, print a line containing a single value, the smallest possible sum of the averages, accurate to 5 decimal places.
Example
Input: 8 4 2 1 3 2 4 3 5 4 6 5 7 6 8 7 10 8 0 0 Output: 2.49845
hide comments
MarioYC:
2013-03-19 05:24:44
What is the number of test cases?
|
|
Mateus Dantas [ UFCG ]:
2013-02-24 05:17:42
:) You hit the spot Alex Anderson! |
|
Alex Anderson:
2013-02-23 21:40:14
Excellent! |
|
Alex Anderson:
2013-02-23 03:32:12
=/ Current algo's runtime is on the order of 1billion operations per test case = no good. |
|
Ehor Nechiporenko:
2013-02-21 09:07:56
Hart task! |
Added by: | Mateus Dantas [ UFCG ] |
Date: | 2013-02-19 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ASM64 |
Resource: | Mateus Dantas |