티스토리 뷰

문제

과거 이집트인들은 각 변들의 길이가 3, 4, 5인 삼각형이 직각 삼각형인것을 알아냈다. 주어진 세변의 길이로 삼각형이 직각인지 아닌지 구분하시오.

 

입력

입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다.

 

출력

각 입력에 대해 직각 삼각형이 맞다면 "right", 아니라면 "wrong"을 출력한다.

 

    //반복문
    while (true)
    {
    //세 변의 길이를 입력 받기.
    string[] input = Console.ReadLine().Split(' ');

	  //각각 a b c로 나눠 저장. (int)
      int a = int.Parse(input[0]);
      int b = int.Parse(input[1]);
      int c = int.Parse(input[2]);
      
      //만약 0 0 0이 입력되었다면 while문을 종료.
      if (a == 0 && b == 0 && c == 0)
      break;

	  //입력 받은 세 값중 어떤 수가 가장 큰 수, 즉 빗변인지 구하기 위해
      //배열에 오름차순으로 저장한다.
      int[] sides = {a, b, c};
      Array.Sort(sides);
      
      //만약 피타고라스 공식이 성립하면
      if (sides[0] * sides[0] + sides[1] * sides[1] == sides[2] * sides[2])
        Console.WriteLine("right");
      else
        Console.WriteLine("wrong");
    }

 

컴파일링을 했을때 정상적으로 값이 잘 출력됐는데.

문제 제출만 하면 틀렸다고 표시되었다.

GPT에게 물어보니 a b c중 어떤 게 가장 큰 수 인지 확실하지 않기 떄문이라고 했다.

당연하게 c가 가장 큰 빗변이라고 가정했는데, 실수였다.

 

오늘 배운 점

Array.Sort()

- 배열을 오름차순으로 나열하는 코드.

'프로그래밍' 카테고리의 다른 글

2025.02.09 군대 개발 현황  (0) 2025.02.09
C# 백준 30802 문제 풀이  (0) 2024.09.21
C# - 백준 10250 문제 풀이  (0) 2024.09.21
C# - 백준 10809 문제 풀이  (0) 2024.09.21
C# - 백준 11720 문제 풀이  (0) 2024.09.20
댓글