find the minimum and maximum values that can be calculated by summing exactly four of the five integers. Then print the respective minimum and maximum values as a single line of two space-separated long integers.
Example:
arr = [1,3,5,7,9]
The minimum sum is 1+3+5+7 = 16 and the maximum sum is 3+5+7+9 = 24. The function prints
16 24
Output Format
Print two space-separated long integers denoting the respective minimum and maximum values that can be calculated by summing exactly four of the five integers. (The output can be greater than a 32-bit integer.)
Sample Input
1 2 3 4 5
Sample Output
10 14
Explanation:
The numbers are 1, 2, 3, 4, and 5. Calculate the following sums using four of the five integers:
- Sum everything except 1, the sum is 1+2+3+4+5 = 14.
- Sum everything except 2, the sum is 1+3+4+5 = 13.
- Sum everything except 3, the sum is 1+2+4+5 = 12.
- Sum everything except 4, the sum is 1+2+3+5 = 11.
- Sum everything except 5, the sum is 1+2+3+4 = 10.
From the above calculation, 10 is the minimum and 14 is maximum.
Code language => Python
Solutions:
arr = [1,3,5,7,9] def sumOfarray(arry): s = 0 l = len(arry) for x in range(0,l): s =s+ arry[x] return s def findminandmax(arr): sumOfarr = [] for i in range(0, len(arr)): a = arr[:] a.pop(i) sumOfarr.append(sumOfarray(a)) return print(str(min(sumOfarr)) + " "+ str(max(sumOfarr))) findminandmax(arr) ###output### # 16 24
Note: we use a deep clone([:]) or deep copy for changing an array without affecting previous array values.
Example for deep clone:
1st case without deep clone
# Example for deep clone: a = [5, 2] b = a b[0] = 100 print(a) ###output### #[100 ,2]
2nd case with a deep clone [:]
# if we dont want to change variable a, then a = [5,2] b = a[:] b[0] = 100 print(a) ###output### #[5,2]