백준문제풀이 10단계 기하: 직사각형과 삼각형(7) 5073번 삼각형과 세 변 (C#)

2024. 7. 2. 20:00백준 문제풀이/10단계 기하: 직사각형과 삼각형

 

저번문제와 같이 삼각형을 구별하는 문제다.

이번엔 변의 길이를 받아 구별해보자.

 

가장 큰 변의 길이와 합을 구하고

비교해서 구별해주자.

 

using System;
class BackJoon
{
    static void Main(string[] args)
    {
        while (true)
        {
            string[] input = Console.ReadLine().Split();
            int a = int.Parse(input[0]);
            int b = int.Parse(input[1]);
            int c = int.Parse(input[2]);

            if (a == 0 && b == 0 && c == 0) break;

            int max = Math.Max(a, Math.Max(b, c));
            int sum = a + b + c;

            if (max >= sum - max)
            {
                Console.WriteLine("Invalid");
            }
            else if (a == b && b == c)
            {
                Console.WriteLine("Equilateral");
            }
            else if (a == b || b == c || c == a)
            {
                Console.WriteLine("Isosceles");
            }
            else
            {
                Console.WriteLine("Scalene");
            }
        }
    }
}

 

먼저 입력은 0,0,0이 나올때까지 반복한다.

0,0,0이면 break해주자.

 

Math.max를 이용해 세 수중 가장큰 숫자를 찾아준다.

그 다음 합에서 최댓값을 빼준값과 최댓값을 비교해서 최댓값이 더 크다면

삼각형이 아니므로 invalid출력

 

a,b,c가 모두 같다면 Equilateral출력

두개만 같다면 Isosceles출력

세개가 다 다르다면 Scalene 출력