본문 바로가기
Java/알고리즘

최솟값만들기

by 티코딩 2024. 2. 13.

A와 B의 원소를 하나씩 뽑아 곱하고 더한값중 최솟값이 되는 경우를 찾는것이다.

지난번에도 이번에도 역시 똑같이 생각했다. A에선 가장 작은 수 * B에선 가장 큰 수를 계산해준다.

 

ㅇ 풀이

public int solution(int[] a, int[] b){
        Arrays.sort(a);
        Arrays.sort(b);
        int answer = 0;
        for(int i = 0; i < a.length; i++) {
            answer += a[i] * b[a.length-i-1];
        }
        return answer;
    }

a와 b둘다 오름차순으로 정렬해준다.

그리고 a의 가장 작은수와 b의 가장 큰수를 곱해주고 누적시킨다.

끝.

'Java > 알고리즘' 카테고리의 다른 글

이진 변환 반복하기  (0) 2024.02.20
올바른괄호  (0) 2024.02.14
JadenCase 문자열  (1) 2024.02.08
다시 lv2로  (0) 2024.02.07
최대공약수와 최소공배수  (1) 2024.02.06