using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//[?] 최댓값과 최솟값을 제외한 나머지의 평균값을 구하는  알고리즘

namespace Project2
{
    class Class1
    {
        static void Main(string[] args)
        {

            //[1]Input
            int[] scores = { 10, 20, 30, 40, 50 }; //30
            var sum = 0;
            var max = Int32.MinValue; //해당 범위에서 가장 작은 값으로 초기화;
            var min = Int32.MaxValue; //해당 범위에서 가장 큰 값으로 초기화;
            var avg = 0.0; //average 

            //[2]process: Min
            for(int i=0; i<scores.Length; i++)
            {
                sum += scores[i];
                if (scores[i] > max)
                {
                    max = scores[i];
                }
                if (scores[i] < min)
                {
                    min = scores[i];
                }
            }

            avg = (sum - max - min) / (double)(scores.Length - 2);

            //[3]Output
            Console.WriteLine($"합계:{sum}, 최댓값:{max}, 최솟값:{min}");
            Console.WriteLine($"최댓값과 최솟값을 제외한 평균값:{avg}");
            
            

        }
        
    }
}