No Rules Rules

삼각형과 세 변 (feat. 백준, 5073번) 본문

생활/코테

삼각형과 세 변 (feat. 백준, 5073번)

개발하는 완두콩 2023. 3. 20. 12:53
728x90
반응형

삼각형과 세 변
https://www.acmicpc.net/problem/5073

 

5073번: 삼각형과 세 변

각 입력에 맞는 결과 (Equilateral, Isosceles, Scalene, Invalid) 를 출력하시오.

www.acmicpc.net

 

// woohyeon.kim
// kim519620.tistory.com
#include <iostream>
#include <queue>
using namespace std;
int main() {
	ios::sync_with_stdio(false), cin.tie(NULL);
    register int a, b, c, d, e, f;
    priority_queue<int> q;
    while(1){
        cin >> a >> b >> c;
        if(a == 0 && b == 0 && c == 0)
            break;
        q.push(a), q.push(b), q.push(c);
        d = q.top(); q.pop();
        e = q.top(); q.pop();
        f = q.top(); q.pop();
        if(d >= e + f)
            cout << "Invalid";
        else{
            if(a == b && b == c && a == c)
                cout << "Equilateral";
            else if(a != b && b != c && a != c)
                cout << "Scalene";
            else
                cout << "Isosceles";
        }
        cout << '\n';
    }
	return 0;
}
// *&)*@*

 

반응형

값의 크기별 자동정렬이 되는 priority_queue 자료구조를 이용하여 가장 큰 변과 나머지 변과의 비교를 하였습니다.

또한 최초 입력받은 세 변의 길이간 비교를 통해 문제의 요구사항대로 출력하는 문제입니다.

728x90
반응형
Comments