코딩테스트

백준 / 삼각형과 세 변

murlocdev 2025. 4. 23. 13:50
#include <iostream>
#include <math.h>
#include <vector>

using namespace std;

int main()
{
	// 삼각형과 세 변

	// 세 변 선언
	int A = 0, B = 0, C = 0;
	
	// 가장 긴 변 선언
	int MAX = 0;

	cin >> A >> B >> C;

	vector<string> v_answer;

	while (true)
	{
		// 세 변의 길이가 모두 0이면
		if (A == 0 && B == 0 && C == 0)
		{
			break;
		}

		// 세 변의 길이가 모두 같은 경우
		if (A == B && B == C)
		{
			v_answer.push_back("Equilateral");
		}
		else
		{
			MAX = max(max(A, B), C);
			// 삼각형의 조건을 만족하지 못하는 경우
			if (MAX == A)
			{
				if (MAX >= B + C)
				{
					v_answer.push_back("Invalid");
					cin >> A >> B >> C;
					continue;
				}
			}
			else if (MAX == B)
			{
				if (MAX >= A + C)
				{
					v_answer.push_back("Invalid");
					cin >> A >> B >> C;
					continue;
				}
			}
			else if (MAX == C)
			{
				if (MAX >= A + B)
				{
					v_answer.push_back("Invalid");
					cin >> A >> B >> C;
					continue;
				}
			}

			// 두 변의 길이가 같은 경우
			if (A == B || B == C || A == C)
			{
				v_answer.push_back("Isosceles");
			}
			// 세 변의 길이가 모두 다른 경우
			else
			{
				v_answer.push_back("Scalene");
			}
		}
		cin >> A >> B >> C;
	}

	for (size_t i = 0; i < v_answer.size(); ++i)
	{
		cout << v_answer[i] << endl;
	}

	return 0;
}

'코딩테스트' 카테고리의 다른 글

백준 / 알고리즘 수업 - 알고리즘의 수행 시간 1  (0) 2025.05.17
백준 / 세 막대  (0) 2025.04.23
백준 / 삼각형 외우기  (0) 2025.04.23
백준 / 대지  (0) 2025.04.23
백준 / 수학은 체육과목 입니다  (0) 2025.04.23