CodingTest

프로그래머스 - 삼각형의 완성조건(1) (JAVA)

쩡선영 2023. 2. 2. 18:11

문제설명


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

● 가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다.

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

<제안사항>

1) sides의 원소는 자연수입니다.

2) sides의 길이는 3입니다.

3) 1 <= sides의 원소 <= 1,000

 

 

 

내가 직접 짠 코드


import java.util.*;
class Solution {
    public int solution(int[] sides) {
        int answer = 0;
        Arrays.sort(sides);
        if(sides[0]+ sides[1]>sides[2]) answer=1;
        else answer=2;
        return answer;
    }
}

 

 

코드 해설


1) sides를 정렬 해주고 

2) sides[0] (가장 작은 변) + sides[1] (두번째로 작은 변) > sides[2] (가장 긴 변)의 조건이 true이면 

answer을 1로

3) 아니면 2를 return 해줬습니다!

 

 

 

다른 사람의 풀이


import java.util.Arrays;
class Solution {
    public int solution(int[] sides) {
        int answer = 0;
        Arrays.sort(sides);
        return sides[2] >= sides[0]+sides[1] ? 2 : 1;
    }
}

이렇게 삼항연산자를 사용하여 코드의 길이를 줄일 수 있습니다

앞으로 삼항연산자에 대해 더욱 익숙해져봐야겠네요ㅠㅜㅠㅜ