Programmers | 코딩테스트 입문 - 삼각형의 완성조건(1)

2022. 12. 21. 15:17공부/Programmers

프로그래머스 Lv.0 삼각형의 완성조건(1)

 

제한사항

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

입출력 예

sidesresult

[1, 2, 3] 2
[3, 6, 2] 2
[199, 72, 222] 1

입출력 예 설명

입출력 예 #1

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

입출력 예 #2

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

입출력 예 #3

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

 

JAVA

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

다른사람 풀이

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;
    }
}

 

Python3

def solution(sides):
    answer = 2
    sides.sort();
    if sides[0]+sides[1] > sides[2]:
        answer = 1
    return answer

다른사람 풀이

def solution(sides):
    return 1 if max(sides) < (sum(sides) - max(sides)) else 2

max함수가 있는 줄 몰랐당ㅎㅎ