코테/프로그래머스
[프로그래머스/Lv. 0] 삼각형의 완성조건 (1)
imname1am
2023. 1. 23. 13:14
반응형
내 코드
class Solution {
public int solution(int[] sides) {
int answer = 0;
// Max 길이를 구하고
int max = sides[0];
int idx = 0;
for(int i=0 ; i<sides.length ; i++) {
if(sides[i] > max) {
max = sides[i];
idx = i;
}
}
// 나머지 두 변 길이 합이랑 비교
if(idx == 0) {
if((sides[1]+sides[2]) > max) answer = 1;
else answer = 2;
}
else if(idx == 1) {
if((sides[0]+sides[2]) > max) answer = 1;
else answer = 2;
}
else if(idx == 2) {
if((sides[0]+sides[1]) > max) answer = 1;
else answer = 2;
}
return answer;
}
}
나는 max를 직접(?) 구했는데 다른 풀이들은 Arrays.sort()를 이용하셨넴...
나 혼자 굉장히 복잡하고 길게 구한 듯..ㅠ
그리고 나머지 두 변 길이 합이랑 비교하는 것도 삼항 연산자로 하면 조금 더 코드 길이가 줄어들 수 있었음.
(answer = sides[0] < sides[1] + sides[2] ? 1 : 2; 이런 식으로)
다른 사람 코드
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;
}
}
(참고)
자바 배열 최대값 구하기
[JAVA] 자바 배열 최대값 구하기
오늘은 자바 배열에서 최댓값을 구하는 방법에 대해 알아보도록 하겠습니다. 최댓값을 구할 때 요소를 하나씩 차례대로 조사해 보는 것을 스캔이라고 합니다. 하나하나 살펴보도록 하겠습니다.
balmostory.tistory.com
반응형