## 1491. Average Salary Excluding the Minimum and Maximum Salary

**Description:** You are given an array of unique integers `salary`

where `salary[i]`

is the salary of the `ith`

employee.

Return *the average salary of employees excluding the minimum and maximum salary*. Answers within `10-5`

of the actual answer will be accepted.

Example 1:

Input: salary = [4000,3000,1000,2000] Output: 2500.00000 Explanation: Minimum salary and maximum salary are 1000 and 4000 respectively. Average salary excluding minimum and maximum salary is (2000+3000) / 2 = 2500

Example 2:

Input: salary = [1000,2000,3000] Output: 2000.00000 Explanation: Minimum salary and maximum salary are 1000 and 3000 respectively. Average salary excluding minimum and maximum salary is (2000) / 1 = 2000

Constraints:

`3 <= salary.length <= 100`

`1000 <= salary[i] <= 106`

- All the integers of
`salary`

are unique.

#### min() function explanation:

#### max() function explanation:

public double average(int[] salary):

*excluding the minimum and maximum salary .i.e*sum=sum-min(salary)-max(salary). finaly we got sum of all elements

*excluding the minimum and maximum salary now to find avearge we have to divide it by all element except two minimum and maximum all time so we have just returned*return sum/((salary.length)-2).

#### Solution:

class Solution {

public double average(int[] salary) {

double avg=0;

double sum=0;

for(int i=0; i<salary.length; i++)

{

sum+=salary[i];

}

sum=sum-min(salary)-max(salary);

return sum/((salary.length)-2);

}

public int min(int[] salary)

{

int min=salary[0];

for(int i=0; i<salary.length; i++)

{

if(min>salary[i])

{

min=salary[i];

}

}

return min;

}

public int max(int[] salary)

{

int max=salary[0];

for(int i=0; i<salary.length; i++)

{

if(max<salary[i])

{

max=salary[i];

}

}

return max;

}

}

## 0 Comments