공부/백준

4153번: 직각삼각형(백준 C++)

상연 2020. 10. 17. 16:17

목차

    4153번: 직각삼각형 링크

    코드

    #include <iostream>
    using namespace std;
    
    int main() {
        int side[3];
        while(1){
            cin >> side[0] >> side[1] >> side[2];
            if(side[0] + side[1] + side[2] == 0) break;
    
            int temp;
            for(int i=0; i <2; i++){
                if(side[i] > side[2]){
                    temp = side[i];
                    side[i] = side[2];
                    side[2] = temp;
                }
            }
            if(side[2] * side[2] == (side[0] * side[0]) + (side[1] * side[1]))
                cout << "right\n";
            else
                cout << "wrong\n";
        }
    
    }
    

    사견

    빗변의 길이 제곱 = 다른 변의 길이의 제곱의 합

    이 식을 이용해서 풀면 되는 문제이다.

    해서 가장 긴변을 배열의 2번째 인덱스에 오게 한 후.

    0번, 1번 인덱스 값의 제곱과 2번째 인덱스 값의 제곱을 비교하는 방법으로 문제를 해결했다.