ABA12C  Buying Apples!
Harish went to a supermarket to buy exactly ‘k’ kilograms apples for his ‘n’ friends. The supermarket was really weird. The pricing of items was very different. He went to the Apples section and enquired about the prices. The salesman gave him a card in which he found that the prices of apples were not per kg. The apples were packed into covers, each containing ‘x’ kg of apples, x > 0 and ‘x’ is an integer. An ‘x’ kg packet would be valued at ‘y’ rupees. So, the placard contained a table with an entry ‘y’ denoting the price of an ‘x’ kg packet. If ‘y’ is 1 it means that the corresponding packet is not available. Now as apples are available only in packets, he decides to buy atmost ‘n’ packets for his ‘n’ friends i.e he will not buy more than n packets of apples.
Harish likes his friends a lot and so he does not want to disappoint his friends. So now, he will tell you how many friends he has and you have to tell him the minimum amount of money he has to spend for his friends.
Input
The first line of input will contain the number of test cases, C.
Each test case will contain two lines.
The first line containing N and K, the number of friends he has and the amount of Apples in kilograms which he should buy.
The second line contains K space separated integers in which the ith integer specifies the price of a ‘i’kg apple packet. A value of 1 denotes that the corresponding packet is unavailable.
 0 < N <= 100
 0 < K <= 100
 0 < price <= 1000
Output
The output for each test case should be a single line containing the minimum amount of money he has to spend for his friends. Print 1 if it is not possible for him to satisfy his friends.
Sample I/O
Input: 2 3 5 1 1 4 5 1 5 5 1 2 3 4 5 Output: 1 5
Explanation of test cases:
1) As there are only 3 and 4kg packets in the shop, he will not be able to satisfy his friends as he would not be able to buy exactly 5kg of apples.
2) He can buy five 1kg packet as he has to buy 5 kg. So the min money he should spend is 5.
hide comments
saini428:
20160124 22:17:31
my 60th,,,,,easy one


Amitayush Thakur:
20160109 07:24:18
Input test file has spacing problem. My Java solution with BufferedReader didn't get accepted but when I changed it to scanner it got AC. Also the constraint on 'n' is not used. The language of the question is ambiguous too. 

kejriwal:
20160106 19:51:12
i think your testcases don't include the case where num of bags are > n !! cool problem though :) !! 

naruto09:
20151231 12:30:02
no use of varible "n"..but you can get AC even if you take n into account 

Shubham Gupta:
20151227 16:29:57
'n' is not taken into account while determining o/p.


sneh sajal:
20151225 20:34:33
note : one item can be taken multiple times! good DP :) 

priyank:
20151214 10:10:12
nice question 

vijay meena:
20151205 18:39:53
same as Rod cutting. just change max into min thats it 

munjal:
20151029 18:57:43
Not at all good description of the question is provided ........ !!!!!!!!!!!!!!!!!!!!!!!! 

LeppyR64:
20151026 19:57:21
Regardless of everyone's complaining that the test cases do not exploit the fact that n is not considered, a solution that does consider that the number of pacakages is at most n will still get AC (Including mine). Please do mind the constraint that price can be equal to zero. O(k * n * k) 
Added by:  Kashyap Krishnakumar 
Date:  20120113 
Time limit:  1s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All except: ASM64 
Resource:  Own problem 