A person wants to determine the most expensive computer keyboard and USB drive that can be purchased with a give budget. Given price lists for keyboards and USB drives and a budget, find the cost to buy them. If it is not possible to buy both items, return .
Example
The person can buy a , or a . Choose the latter as the more expensive option and return .
Function Description
Complete the getMoneySpent function in the editor below.
getMoneySpent has the following parameter(s):
- int keyboards[n]: the keyboard prices
- int drives[m]: the drive prices
- int b: the budget
Returns
- int: the maximum that can be spent, or if it is not possible to buy both items
The first line contains three space-separated integers , , and , the budget, the number of keyboard models and the number of USB drive models.
The second line contains space-separated integers , the prices of each keyboard model.
The third line contains space-separated integers , the prices of the USB drives.
The second line contains space-separated integers , the prices of each keyboard model.
The third line contains space-separated integers , the prices of the USB drives.
Constraints
- The price of each item is in the inclusive range .
10 2 3 3 1 5 2 8
Sample Output 0
9
Explanation 0
Buy the keyboard and the USB drive for a total cost of .
Solution:
Code in c++
#include<bits h="" stdc="">
using namespace std;
int main(){
int s,n,m,a,res = -1,keyboard[1001],usb[1001];
cin >> s >> n >> m;
for(int i = 0; i < n; i++)cin >> keyboard[i];
for(int i = 0; i < m; i++)cin >> usb[i];
for(int i = 0; i < n; i++){
for(int j = 0; j < m; j++){
if(keyboard[i]+usb[j] <= s)res = max(res,keyboard[i]+usb[j]);
}
}
cout << res << endl;
return 0;
}
Tags:
Advanced
Algorithms
C
C++
Code4xU
Electronic shop
hacker solution
HackerRank
language
Miscellaneous
Solution
Warm-Up Challenges