배열 비교하기

장낙훈·2023년 6월 28일
0

조건

  • 두배열의 길이가 다르다면, 배열의 길이가 긴쪽이 더 큽니다.
  • 만약 배열의 길이가 같다면, 각 배열의 원소의 합을 비교하여 비교합니다.
  • 두 정수 배열 arr1 과 arr2 중에서 arr1이 크다면 1, arr2가 크다면 -1, 같다면 0을 리턴합니다.
class Solution {
    public int solution(int[] arr1, int[] arr2) {
    	// 만약 arr1 의 길이가 더 길면 1 리턴
        if ( arr1.length > arr2.length ) {
            return 1;
        }
        
        // 만약 arr2 의 길이가 더 길면 -1 리턴
        if ( arr1.length < arr2.length ) {
            return -1;
        }
        
        // arr1 의 모든 요소의 합 구하기
        int sum1 = 0;
        
        for ( int i = 0; i < arr1.length; i++ ) {
            sum1 += arr1[i];
        }
        
        // arr2 의 모든 요소의 합 구하기
        int sum2 = 0;
        
        for ( int i = 0; i < arr2.length; i++ ) {
            sum2 += arr2[i];
        }
        
        // 각 배열의 합끼리 비교
        if ( sum1 > sum2 ) {
            return 1;
        }
        
        // 각 배열의 합끼리 비교
        if ( sum1 < sum2 ) {
            return -1;
        }
        
        // 여기까지 왔다면, 배열의 길이로도, 총합으로도 우열을 가리지 못했다는 뜻, 즉 같음
        return 0;
    }
}
profile
개발자

0개의 댓글