Array ( )

삼각형 분류

2017-01-17 00:23:06 | 조회수 1052



※이 설명은 공식 솔루션이 아닌 작성자의 개인적인 솔루션입니다.


초등학교 수학에서 삼각형의 성립 조건을 배웠었습니다. 임의의 두 선분의 합이 나머지 한 선의 합보다 항상 커야 합니다. 작거나 같다면 삼각형을 그릴 수 없습니다.


세 선분이 모두 같다면 정삼각형, 두 선분이 같다면 이등변삼각형, 아니라면 부등변삼각형이므로 조건을 따져서 출력을 시켜주면 됩니다. 출력시 오타에 주의하세요(1번 틀렸었네요 ㅠㅠ)


※해당 소스코드는 참고용이며, 최적화 된 공식 솔루션 소스가 아닙니다. 이 소스를 그대로 복사하여 이용, 또는 제출하는 행위에 대한 불이익은 책임지지 않습니다.

#include<iostream>
using namespace std;

int main()
{
    int T;

    cin >> T;
    for (int tc = 1; tc <= T; tc++)
    {
        int a, b, c;

        cin >> a >> b >> c;
        if(a+b<=c || a+c<=b ||b+c<=a)
            cout << "Case #" << tc << ": invalid!\n";
        else if (a == b&&b == c)
            cout << "Case #" << tc << ": equilateral\n";
        else if(a==b ||b==c ||a==c)
            cout << "Case #" << tc << ": isosceles\n";
        else
            cout << "Case #" << tc << ": scalene\n";

    }
}


삼각형 분류 - 알고리즘닷컴
여기서는 https://acmicpc.net 의 문제를 기반으로 한 설명과 소스코드를 포스팅합니다.

36 개의 글