본문 바로가기

프로그래머스/lv0

삼각형의 완성조건 (2)

/* 삼각형의 완성조건 (2)
 * 선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다.
 * 가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다.
 * 삼각형의 두 변의 길이가 담긴 배열 sides이 매개변수로 주어집니다.
 * 나머지 한 변이 될 수 있는 정수의 개수를 return
 *
 * sides    result
 * [1, 2]   1       두 변이 1, 2 인 경우 삼각형을 완성시키려면 나머지 한 변이 2
 * [3, 6]   5
 * 가장 긴 변이 6인 경우, 될 수 있는 나머지 한 변은 4, 5, 6 로 3개
 * 나머지 한 변이 가장 긴 변인 경우, 될 수 있는 한 변은 7, 8 로 2개
 * [11, 7]  13
 * 가장 긴 변이 11인 경우, 나머지 한 변은 5, 6, 7, 8, 9, 10, 11 로 7개입니다.
 * 나머지 한 변이 가장 긴 변인 경우, 한 변은 12, 13, 14, 15, 16, 17 로 6개
 */
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
import java.util.*;
public class programmer_0_86 {
    static int[] a1 = {12};
    static int[] a2 = {36};
    static int[] a3 = {117};
    public int solution(int[] sides) {
        int answer = 0;
        Arrays.sort(sides);
        for(int i = 1; i <= sides[1]; i++){ 
            if(i + sides[0> sides[1]) answer++;
        }
        //나머지 한변이 가장 긴 경우,
        for(int i = sides[1+ 1; i < (sides[0+ sides[1]); i++){   
            answer++;
        }
        
        return answer;
    }
    public static void main(String args[]){
        programmer_0_86 t = new programmer_0_86();
        // System.out.println("---------------------------------------");
        // System.out.println("result = " + t.solution(a1));
        System.out.println("---------------------------------------");
        System.out.println("result2 = " + t.solution(a2));
        System.out.println("---------------------------------------");
        System.out.println("result3 = " + t.solution(a3));
        System.out.println("---------------------------------------");
    }
}
cs

'프로그래머스 > lv0' 카테고리의 다른 글

직사각형의 넓이  (1) 2022.12.07
컨트롤 제트  (0) 2022.12.07
옹알이(1)  (0) 2022.12.06
다음에 올 숫자  (0) 2022.12.06
연속된 수의 합  (0) 2022.12.06