본문 바로가기

백준 문제풀기/JAVA

[백준 14215 JAVA 자바] 세 막대

 

세 막대를 이용해서 넓이가 양수인 삼각형을 만든다

라는 뜻은

가장 긴 막대의 길이 < 나머지 두 막대 길이의 합

이걸 꼭 지켜야 한다는 뜻입니다

 

코드입니다

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)는

가장 긴 막대의 길이가 나머지 두개 막대기 길이의 합보다 큰 경우를 말합니다

이경우는 삼각형이 될 수 없기에

긴 막대기의 길이를 줄여줘야합니다