반응형


 

백준 - 단계별로 풀어보기 [4153] 

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

문제

 

 

삼각형의 변 길이를 입력받고 직각삼각형인지 아닌지 판단하고 맞으면 right, 아니면 wrong을 출력하는 프로그램을 작성하는 문제이다.

 

풀이

 

입력받은 변중, 가장 큰 값을 가진 변의 재곱값이 나머지 두 변의 재곱값의 합과 같은지 판별

 

 

코드

 

#include <iostream>
using namespace std;

int main() {
    int a,b,c;
    int greatest;
    while(1)
    {
        cin >> a >> b >> c;
        if(a == 0)
            break;
        if(max(a,b) == a)
            if(max(a,c) == a)
            {
                if(a*a == b*b + c*c)
                    cout << "right" << '\n';
                else
                    cout << "wrong" << '\n';
            }
            else
            {
                if(c*c == a*a + b*b)
                    cout << "right" << '\n';
                else
                    cout << "wrong" << '\n';
            }
        else
            if(max(b,c) == b)
            {
                if(b*b == a*a + c*c)
                    cout << "right" << '\n';
                else
                    cout << "wrong" << '\n';
            }
            else
            {
                if(c*c == a*a + b*b)
                    cout << "right" << '\n';
                else
                    cout << "wrong" << '\n';
            }
    }
}

 

평가

 

조건문을 활용하여 피타고라스의 정리를 만족하는지를 살피면 풀 수 있는 문제이다.

 

 

반응형
블로그 이미지

Hyunsoo Luke HA

석사를 마치고 현재는 Upstage에서 전문연구요원으로 활동중인 AI 개발자의 삽질 일지입니다! 이해한 내용을 정리하는 용도로 만들었으니, 틀린 내용이 있으면 자유롭게 의견 남겨주세요!

,