세 막대를 이용해서 넓이가 양수인 삼각형을 만든다
라는 뜻은
가장 긴 막대의 길이 < 나머지 두 막대 길이의 합
이걸 꼭 지켜야 한다는 뜻입니다
코드입니다
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int a=scan.nextInt();
int b=scan.nextInt();
int c=scan.nextInt();
int max =a;
if(max<b)max=b;
if(max<c)max=c;
if(2*max>=a+b+c) {
System.out.println(2*(a+b+c-max)-1);
}else {
System.out.println(a+b+c);
}
}
}
if(2*max >= a+b+c)는
가장 긴 막대의 길이가 나머지 두개 막대기 길이의 합보다 큰 경우를 말합니다
이경우는 삼각형이 될 수 없기에
긴 막대기의 길이를 줄여줘야합니다
'백준 문제풀기 > JAVA' 카테고리의 다른 글
[백준 14492 JAVA 자바] 부울행렬의 부울곱 (0) | 2023.08.26 |
---|---|
[백준 14425 JAVA 자바] 문자열 집합 (0) | 2023.08.26 |
[백준 13909 JAVA 자바] 창문 닫기 (0) | 2023.08.26 |
[백준 13458 JAVA 자바] 시험 감독 (0) | 2023.08.26 |
[백준 13241 JAVA 자바] 최소공배수 (0) | 2023.08.26 |