No Rules Rules

직각삼각형 (feat. 백준, 4153번) 본문

생활/코테

직각삼각형 (feat. 백준, 4153번)

개발하는 완두콩 2022. 8. 3. 20:51
728x90
반응형

직각삼각형
https://www.acmicpc.net/problem/4153

 

4153번: 직각삼각형

입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다.

www.acmicpc.net

반응형
// woohyeon.kim
// https://www.acmicpc.net/problem/4153
#include <iostream>
#include <queue>
using namespace std;
int main() {
	ios::sync_with_stdio(false), cin.tie(NULL);
	register int x, y, z, t1, t2;
	priority_queue<int> ans;
	while (true) {
		cin >> x >> y >> z;
		if (x == 0 && y == 0 && z == 0)
			break;
		ans.push(x), ans.push(y), ans.push(z);
		t1 = ans.top() * ans.top(), ans.pop();
		t2 = ans.top() * ans.top(), ans.pop();
		t2 += ans.top() * ans.top(), ans.pop();
		if (t1 == t2)
			cout << "right";
		else
			cout << "wrong";
		cout << "\n";
	}
	return 0;
}
// *&)*@*
  1. 직각삼각형 은 빗변^2 = 가로변^2 + 세로변^2 입니다.
  2. 또한 직각삼각형 중 가장 큰 값은 빗변의 값입니다.
  3. 따라서 우선순위 큐에 세 변의 정보를 입력하고, 가장 긴 변^2 = 나머지의 변^2 의 합 인지를 확인합니다.
728x90
반응형
Comments