https://school.programmers.co.kr/learn/courses/30/lessons/181856
이 문제에서 두 정수 배열의 대소관계를 다음과 같이 정의합니다.
두 배열의 길이가 다르다면, 배열의 길이가 긴 쪽이 더 큽니다.
배열의 길이가 같다면 각 배열에 있는 모든 원소의 합을 비교하여 다르다면 더 큰 쪽이 크고, 같다면 같습니다.
두 정수 배열 arr1과 arr2가 주어질 때, 위에서 정의한 배열의 대소관계에 대하여 arr2가 크다면 -1, arr1이 크다면 1, 두 배열이 같다면 0을 return 하는 solution 함수를 작성해 주세요.
arr1과 arr2의 길이와 원소의 총합을 비교하기 위해
Integer.compare(param1, param2)
메서드를 사용했습니다.
이 메서드는 param1과 param2를 비교하여 param1이 크면 1을, param2가 크면 -1을, 두 매개변수가 같으면 0을 반환합니다.
class Solution {
public int solution(int[] arr1, int[] arr2) {
int len1 = arr1.length;
int len2 = arr2.length;
if(len1 != len2) return Integer.compare(len1, len2);
int sum1 = 0;
int sum2 = 0;
for(int n1 : arr1) sum1 += n1;
for(int n2 : arr2) sum2 += n2;
return Integer.compare(sum1, sum2);
}
}