Mini-Max Sum solution in Python

Given five positive integers, 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.
For example, . Our minimum sum is  and our maximum sum is . We would print
16 24
Function Description
Complete the miniMaxSum function in the editor below. It should print two space-separated integers on one line: the minimum sum and the maximum sum of  of  elements.
miniMaxSum has the following parameter(s):
  • arr: an array of  integers
Input Format
A single line of five space-separated integers.
Constraints
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
Our initial numbers are , and . We can calculate the following sums using four of the five integers:
  1. If we sum everything except , our sum is .
  2. If we sum everything except , our sum is .
  3. If we sum everything except , our sum is .
  4. If we sum everything except , our sum is .
  5. If we sum everything except , our sum is .
Hints: Beware of integer overflow! Use 64-bit Integer.


We have two solutions of the above challenge. 

---------- First SOLUTION ----------

#!/bin/python3

import math
import os
import random
import re
import sys

# Complete the miniMaxSum function below.
def miniMaxSum(arr):
    x = sum(arr)
    print ((x-(max(arr))), (x-(min(arr))))
if __name__ == '__main__':
    arr = list(map(int, input().rstrip().split()))

    miniMaxSum(arr)


---------- Second SOLUTION ----------

#!/bin/python3

import math
import os
import random
import re
import sys

# Complete the miniMaxSum function below.
def miniMaxSum(arr):
    arr_max = max(arr)
    arr_min = min(arr)
    min_t = 0
    max_t = 0
    for i in arr:
        if (i > arr_min):
            min_t = min_t + i
    for j in arr:
        if (j < arr_max):
            max_t = max_t + j
    print (max_t, min_t)
if __name__ == '__main__':
    arr = list(map(int, input().rstrip().split()))

    miniMaxSum(arr)

Comments

Popular posts from this blog

Asterisk-AMI

A very big sum Solution in Python