관리 메뉴

JIE0025

[ C++ ] 삼각형의 성립 조건 본문

기타 학습/Language

[ C++ ] 삼각형의 성립 조건

Kangjieun11 2022. 5. 20. 18:06
728x90

https://codeup.kr/problem.php?id=1212&rid=0 

 

삼각형의 성립 조건

삼각형이 가능하면 "yes", 삼각형을 만들 수 없다면 "no"를 출력하시오.

codeup.kr

 

 

문제

세 개의 직선이 있다.

숫자의 의미는 직선의 길이를 말한다.

이 직선으로 삼각형을 만들 수 있는지 판단하는 프로그램을 작성하시오.

삼각형의 성립 조건)

a, b, c 가 변의 길이이고 c가 제일 긴 길이라고 한다면

c < a + b 이면 삼각형이 성립됨.

 

입력

직선의 길이 3개가 입력으로 주어진다.(정수)

 

출력

삼각형이 가능하면 "yes", 삼각형을 만들 수 없다면 "no"를 출력하시오.

 

입력 예시   

2 3 4

출력 예시

yes

 

 


 

 

삼각형의 성립조건은 가장 긴 변의 길이가 나머지 두 변의 길이의 합을 넘기면 안된다는 것이다.

 

1) 일단 들어온 세 직선의 길이중 가장 긴 길이가 무엇인지 확인

2) 나머지 길이를 더해서 값 비교

 

하면 되는 간단한 문제다.

 

#include <iostream>

using namespace std;

void isPossible(int maxval, int val1, int val2) {
	if (maxval < val1 + val2)
		cout << "yes";
	else
		cout << "no";
}
int main() {

	int a, b, c;
	cin >> a >> b >> c;

	if (a >= b && a >= c) {
		isPossible(a,b,c);
	}
	else if (b >= a && b >= c) {
		isPossible(b,a,c);
	}
	else if (c >= a && c >= b) {
		isPossible(c,a,b);
	}
	return 0;
}

'기타 학습 > Language' 카테고리의 다른 글

[ C++ ] 상속  (0) 2022.05.20
[ C++ ] sort , stable_sort  (0) 2022.05.20
[ C++ ] 충돌 알고리즘  (0) 2022.05.20
[ C++ ] 문자열을 숫자로 (stoi, stof, stol, stod)  (0) 2022.05.19
[ C++ ] 문자열 치환 replace, regex_replace  (0) 2022.05.19