모든 일상

C# 백준 1546번 문제 평균 본문

코딩 공부/C#

C# 백준 1546번 문제 평균

통통푸린 2021. 7. 23. 21:50
728x90
반응형

문제 이해하는데 오래 걸린 문제이다. 예제 입력 1로 설명을 하자면 40 60 80 이 점수이고 이 값들을 합한 180을 최고점 80 으로 나눈후 100을 곱해준다. 그럼 225라는 값이 나오는데 그 값을 총 3과목이니까 3으로 나눠준다. 

using System;

namespace ConsoleApp9
{  
    class Program
    {
        static void Main(string[] args)
        {
            int size = int.Parse(Console.ReadLine());
            string str = Console.ReadLine();
            string[] arr = str.Split();
            int max = 0, sum = 0;
            for(int i = 0; i<arr.Length; i++)
            {
                if (int.Parse(arr[i]) > max) max = int.Parse(arr[i]);

                sum += int.Parse(arr[i]);
            }
            double result = (((double)sum / max) * 100) / size;      //------------------------------ 1

            Console.WriteLine(result);
        }
    }
}

* 1 -> sum과 max의 연산속에서 double형으로 캐스팅을 시켜주지 않으면 결과 값이 다르게 나오니 주의

728x90
반응형