일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 코딩봉사
- 시나공
- 파이썬
- 프로그래머스
- 백준
- BFS
- 소프티어
- 문제풀이
- 백준 알고리즘
- 공부일지
- SW봉사
- java
- 자바
- 알고리즘
- 회고
- softeer
- programmers
- kotlin
- 코틀린
- 스프링
- CJ UNIT
- 데이터베이스
- 1과목
- MYSQL
- SQL
- 정보처리산업기사
- 백준알고리즘
- python
- 코딩교육봉사
- C++
Archives
- Today
- Total
JIE0025
[ C++ ] 삼각형의 성립 조건 본문
728x90
https://codeup.kr/problem.php?id=1212&rid=0
문제
세 개의 직선이 있다.
숫자의 의미는 직선의 길이를 말한다.
이 직선으로 삼각형을 만들 수 있는지 판단하는 프로그램을 작성하시오.
삼각형의 성립 조건)
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 |