삼각형의 완성조건 (1) Lv. 0

박영준·2023년 5월 15일
0

코딩테스트

목록 보기
90/300

문제 설명

선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다.

가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다.
삼각형의 세 변의 길이가 담긴 배열 sides이 매개변수로 주어집니다. 세 변으로 삼각형을 만들 수 있다면 1, 만들 수 없다면 2를 return하도록 solution 함수를 완성해주세요.

class Solution {
    public int solution(int[] sides) {
        int answer = 0;
        return answer;
    }
}

제한 사항

  • sides의 원소는 자연수입니다.
  • sides의 길이는 3입니다.

입출력 예

입출력 예 설명

  • 입출력 예 #1

    • 가장 큰 변인 3이 나머지 두 변의 합 3과 같으므로 삼각형을 완성할 수 없습니다. 따라서 2를 return합니다.
  • 입출력 예 #2

    • 가장 큰 변인 6이 나머지 두 변의 합 5보다 크므로 삼각형을 완성할 수 없습니다. 따라서 2를 return합니다.
  • 입출력 예 #3

    • 가장 큰 변인 222가 나머지 두 변의 합 271보다 작으므로 삼각형을 완성할 수 있습니다. 따라서 1을 return합니다.

해결법

방법 1

import java.util.*;

class Solution {
    public int solution(int[] sides) {
        int answer = 0;
               
        // 가장 큰 변 < 나머지 변 1 + 나머지 변 2
        // 오름차순 정렬 -> [2] 가 가장 큰 수 -> [0] + [1] > [2] 인지 확인
        
        Arrays.sort(sides);
        
        if (sides[0] + sides[1] > sides[2]) {
            answer = 1;
        } else {
            answer = 2;
        }
        
        return answer;
    }
}
  • 오름차순 정렬부터 하면, 가장 큰 수를 찾기가 쉬워진다

방법 2

import java.util.*;

class Solution {
    public int solution(int[] sides) {

        Arrays.sort(sides);
        
        return sides[0] + sides[1] > sides[2]? 1 : 2;
    }
}

삼각형의 완성조건 (1)

profile
개발자로 거듭나기!

0개의 댓글