본문 바로가기
알고리즘/백준 BOJ

[ BOJ/C# ] 1546 평균

by 왹져박사 2023. 9. 1.

https://www.acmicpc.net/problem/1546

 

1546번: 평균

첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보

www.acmicpc.net

새로운 평균을 구하는 문제이다. 

오차가 소수 2번째 자리 이하를 허용하기 때문에 float로만 구해도 충분하다. 

간단하게 배열의 최댓값과 평균을 구하여 새로운 평균을 구해주었다. 

using System;

namespace _1546
{
    class Program
    {
        static void Main()
        {
            StreamReader sr = new StreamReader(Console.OpenStandardInput());
            StreamWriter sw = new StreamWriter(Console.OpenStandardOutput());

            int n = int.Parse(sr.ReadLine());
            string[] str = sr.ReadLine().Split(' ');
            List<int> array = new List<int>();

            for(int i=0; i<str.Length; i++)
            {
                array.Add(int.Parse(str[i]));
            }

            int max = array.Max();
            float average = (float)array.Average();
            float newAverage = average / max * 100;

            sw.WriteLine(newAverage);

            sr.Close();
            sw.Flush();
            sw.Close();
        }
    }
}