알고리즘 연습

C++ 4153 직각삼각형

728x90

#include <iostream>

using namespace std;

int main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	int x, y, z;

	while (1) {
		cin >> x >> y >> z;
		int temp = 0;
		if (x == 0 || y == 0 || z == 0)
			break;
		if (x > y) {
			temp = x;
			x = y;
			y = temp;
		}
		if (y > z) {
			temp = y;
			y = z;
			z = temp;
		}

		if (z * z == x * x + y * y) {
			cout << "right" << '\n';
		}
		else {
			cout << "wrong" << '\n';
		}
	}
}

아으.. x, y, z의 크기 비교과 스왑을 안 해줘서 틀렸었다.

 

주어진 예제로는 문제가 없을지 몰라도 여러가지 수들을 넣었을 때 판별이 되려면 크기 비교와 스왑이 필요하다는 것을 생각했어야 한다.

728x90

'알고리즘 연습' 카테고리의 다른 글

C++ 2231 분해합  (0) 2021.09.30
C++ 2798 블랙잭  (0) 2021.09.30
C++1085 직사각형에서 탈출  (0) 2021.09.28
C++ 9020 골드바흐의 추측  (0) 2021.09.28
C++ 4948 베르트랑 공준  (0) 2021.09.27