MEGA SALE

PROBLEM :

LALU wanted to purchase a laptop so he went to a nearby sale.There were n Laptops at a sale. Laptop with index i costs ai rupees. Some Laptops have a negative price — their owners are ready to pay LALU if he buys their useless Laptop. LALU can buy any Laptop he wants. Though he's very strong, he can carry at most m Laptops, and he has no desire to go to the sale for the second time. Please, help LALU find out the maximum sum of money that he can earn.

Input:
First line of the input contains T denoting the number of test cases.Each test case has 2 lines :

first line has two spaced integers n m.
second line has n integers [a0...ai...an-1].

Output:
The maximum sum of money that LALU can earn, given that he can carry at most m Laptops.


Constraints:
1=T=10
1=n,m=100
-1000=ai=1000


Sample Input:
1
5 3
-6 0 35 -2 4

Sample Output:
8

Explanation:
LALU takes the laptops with -6 and -2 and thus earns 8 rupees.

--------------------------------------------------------------------------------
SIMPLE c++ IMPLEMENTATION :
--------------------------------------------------------------------------------

#include<iostream>
using namespace std;
int MEGA_SALE(int [],int ,int ) ;
void bubble_sort(int [],int ) ;
int minof(int ,int ) ;
int main()
 {
int t,arr[100],no,i,k ;
cin>>t ;
while(t--)
{
   cin>>no ;
   cin>>k ;
   for(i=0;i<no;i++)
       cin>>arr[i] ;
     
   no=MEGA_SALE(arr,no,k) ;
   cout<<abs(no)<<endl ;
}
return 0;
}

int MEGA_SALE(int arr[],int no,int k)
{
    int i ;
    bubble_sort(arr,no) ;
   
    int sum=0 ;
    for(i=0;i<k;i++)
        sum=minof(sum,sum+arr[i]) ;
       
    return sum ;
}

void bubble_sort(int arr[],int no)
{
    int i,j,temp ;
    for(i=0;i<no-1;i++)
    {
        for(j=0;j<no-i-1;j++)
        {
            if(arr[j]>arr[j+1])
            {
                temp=arr[j] ;
                arr[j]=arr[j+1] ;
                arr[j+1]=temp ;
            }
        }
    }
}

int minof(int a,int b)
{
    return a>b?b:a ;
}      

---------------------------------------------------------------------------------

Comments

Popular posts from this blog

Count ways to N'th Stair(Order does not matter)

Replace all ‘0’ with ‘5’ in an input Integer

Chocolate Distribution Problem

Remove characters from the first string which are present in the second string

Primality Test ( CodeChef Problem code: PRB01 )