코딩테스트

[프로그래머스] 삼각형의 완성조건 (1) [Java]

블로그 주인장 2023. 8. 20.

🎁 문제 링크

https://school.programmers.co.kr/learn/courses/30/lessons/120889

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

🎁 문제 설명

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

🎁 입출력 예시

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

🎁 코드

import java.util.Arrays;

class Solution {
    public int solution(int[] sides) {
        int answer = 0;
        Arrays.sort(sides);

        if (sides[2] < sides[0] + sides[1]) {
            answer = 1;
        } else {
            answer = 2;
        }
        return answer;
    }
}

🎁 코드 설명

1) 배열 안에 있는 값들 중에 가장 큰 수가 나머지 2개의 합보다 작으면 2, 크면 1을 도출한다.

2) side 배열을 오름차순 정렬하여 맨 마지막 값을 최대값으로 설정한다.

3) 두 변의 합이 큰 값보다 작다면 1을 answer에 대입하고 그게 아니라면 2를 대입한다.

반응형

댓글