Dev.baelanche

[백준 1026] 보물 본문

Data Structure & Algorithm/PS - JAVA

[백준 1026] 보물

baelanche 2019. 4. 1. 21:13
반응형

 

문제에는 배열 B를 재배열 하지말라고 언급했는데 재배열 하지 않고 풀 줄 모르겠어서 재배열했다...

 

배열 A, B 를 각각 오름차순, 내림차순으로 정렬하여 곱하면 최소값이 나온다.

 

 

public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int n = sc.nextInt();
        int a[] = new int[n];
        int b[] = new int[n];
        
        for(int i=0; i<n; i++) a[i] = sc.nextInt();
        for(int i=0; i<n; i++) b[i] = sc.nextInt();
        
        for(int i=1; i<n; i++) {
            for(int j=1; j<n; j++) {
                if(a[j-1] > a[j]) {
                    int tmp = a[j-1];
                    a[j-1] = a[j];
                    a[j] = tmp;
                }
            }
        }
        
        for(int i=1; i<n; i++) {
            for(int j=1; j<n; j++) {
                if(b[j-1] < b[j]) {
                    int tmp = b[j-1];
                    b[j-1] = b[j];
                    b[j] = tmp;
                }
            }
        }
        
        int sum = 0;
        for(int i=0; i<n; i++)
            sum += a[i]*b[i];
        
        System.out.println(sum);
}
반응형
Comments