728x90
단계별로 풀어보기 - 수학 2단계 - [8단계] 4153번
문제
문제 링크 : www.acmicpc.net/problem/4153
입력 복사 :
6 8 10 25 52 60 5 12 13 0 0 0
CODE
#include <iostream>
using namespace std;
int main() {
while (1) {
int x, y, z;
int temp = 0;
cin >> x >> y >> z;
if (x == 0 && y == 0 && z == 0)
return 0;
if (x > y) {
temp = y;
y = x;
x = temp;
}
if (y > z) {
temp = z;
z = y;
y = temp;
}
if (z*z == x * x + y * y)
cout << "right\n";
else
cout << "wrong\n";
}
}
풀이
직각삼각형의 위와 같은 피타고라스의 정리가 성립한다.
가장 큰변이 구분되어야 하기 때문에,
코드에서는 x, y, z를 차례로 비교, swap하여 가장 큰 변의 길이가 z에 올 수 있도록 했다.
결과
728x90
'Baekjoon > 단계별로 풀어보기' 카테고리의 다른 글
[BOJ / 백준] 1002번 터렛 C++ 문제 풀이 (0) | 2020.11.20 |
---|---|
[BOJ / 백준] 3053번 택시 기하학 C++ 문제 풀이 (0) | 2020.11.16 |
[BOJ / 백준] 3009번 네 번째 점 C++ 문제 풀이 (0) | 2020.11.11 |
[BOJ / 백준] 1085번 직사각형에서 탈출 C++ 문제 풀이 (0) | 2020.11.11 |
[BOJ / 백준] 9020번 골드바흐의 추측 C++ 문제 풀이 (0) | 2020.11.11 |