#include <iostream>
#include <math.h>
using namespace std;
int main()
{
// 세 막대
int A = 0, B = 0, C = 0;
// 세 막대 길이 입력
cin >> A >> B >> C;
// 가장 긴 변의 길이 구하기
int MAX = max(max(A, B), C);
// 가장 긴 변의 길이 조절
if (MAX == A && A >= B + C)
{
// 길이 조정
// 가장 긴 변이 나머지 두 변과 길이가 같으면 삼각형이 성립되지 않기 때문에 정수의 최소 단위인 1을 빼줌
A = (B + C) - 1;
}
else if (MAX == B && B >= A + C)
{
B = (A + C) - 1;
}
else if (MAX == C && C >= A + B)
{
C = (A + B) - 1;
}
// 세 변의 길이의 합 = 둘레
cout << A + B + C;
return 0;
}
'코딩테스트' 카테고리의 다른 글
백준 / 알고리즘 수업 - 알고리즘의 수행 시간 2 (0) | 2025.05.17 |
---|---|
백준 / 알고리즘 수업 - 알고리즘의 수행 시간 1 (0) | 2025.05.17 |
백준 / 삼각형과 세 변 (0) | 2025.04.23 |
백준 / 삼각형 외우기 (0) | 2025.04.23 |
백준 / 대지 (0) | 2025.04.23 |