🎁 문제 링크
https://leetcode.com/problems/largest-perimeter-triangle/description/
🎁 문제 설명
- Given an integer array nums, return the largest perimeter of a triangle with a non-zero area, formed from three of these lengths. If it is impossible to form any triangle of a non-zero area, return 0.
- 정수 배열 번호가 주어지면 이 길이 중 3개로 이루어진 0이 아닌 영역을 가진 삼각형의 가장 큰 둘레를 반환합니다. 0이 아닌 영역의 어떤 삼각형도 만들 수 없다면 0을 반환합니다.
🎁 입출력 예시
Input: nums = [2,1,2]
Output: 5
Explanation: You can form a triangle with three side lengths: 1, 2, and 2.
🎁 코드
import java.util.*;
class Solution {
public int largestPerimeter(int[] nums) {
int answer= 0;
Arrays.sort(nums);
for(int i = nums.length - 1; i >= 2; i --)
{
if(nums[i] < nums[i - 1] + nums[i - 2]){
answer = nums[i] + nums[i - 1] + nums[i - 2];
break;
}
}
return answer;
}
}
🎁 코드 설명
1) 삼각형은 가장 긴 변의 길이가 나머지 두 변의 합보다 작아야한다.
2) Arrays.sort()를 이용하여 배열을 오름차순으로 정렬하여 가장 큰 값부터 비교를 진행한다.
반응형
'코딩테스트 > Leetcode' 카테고리의 다른 글
Leetcode [Java] :: 58. Length of Last Word (0) | 2023.09.02 |
---|---|
LeetCode [Java] :: 35. Search Insert Position (0) | 2023.08.29 |
LeetCode [Java] :: 7. Reverse Integer (0) | 2023.08.29 |
댓글