4153_백준 [직각삼각형]

2022. 9. 20. 20:09알고리즘 공부/백준 문제풀이

SMALL

2022.09.20

브론즈 3

c++ 사용

 

문제

-- 과거 이집트인들은 각 변들의 길이가 3, 4, 5인 삼각형이 직각 삼각형인것을 알아냈다.

-- 주어진 세변의 길이로 삼각형이 직각인지 아닌지 구분하시오.

입력

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

 

#include <iostream>
using namespace std;

int main() {
	int a, b, c; // 세 변의 길이

	while (1) {
		cin >> a >> b >> c;

		if (a == 0 && b == 0 && c == 0) break; //무한루프 탈출 조건
		//피타고라스 정리
		a = a * a;
		b = b * b;
		c = c * c;

		string result;
		if (a + b == c || a + c == b || b + c == a) result = "right\n";
		else result = "wrong\n";

		cout << result;
	}
}

 

  1. 삼각형의 세 변의 길이를 입력받는다.
  2. 세 변의 길이가 모두 0인 경우 무한루프를 탈출한다.
  3.  ( 가장 긴 변의 길이의 제곱 = 나머지 두 변의 제곱의 합 ) 인 피타고라스 정리를 이용하여 직각 삼각형을 찾아낸다. -- 각 변의 제곱을 구하는 이유
  4. 조건에 따라 삼각형을 구분하고 출력하면 끄읕--!--

이번 문제는 피타고라스에 대해 알면 수월히 풀 수 있는 문제 같아용~

이 문제부터 난이도는 브론즈 3으로 바뀝니다!!

반응형
LIST

'알고리즘 공부 > 백준 문제풀이' 카테고리의 다른 글

1085_백준 [직사각형에서 탈출]  (1) 2022.09.20
2884_백준 [알람 시계]  (1) 2022.09.20
10101_백준 [삼각형 외우기]  (0) 2022.09.20
5532_백준 [방학 숙제]  (0) 2022.09.20
10156_백준 [과자]  (0) 2022.09.16