_우지 2023. 3. 26. 14:42

문제 링크: https://www.acmicpc.net/problem/1026

 

배열 문제이다.

 

1. 한쪽 배열은 asc 로 정렬한다.
2. 나머지 배열은 desc로 정렬한다.
3. 두배열의 인덱스를 0 ~ N 까지 곱하여 더한다.

const fs = require('fs');

BOJkey = false;

let input = fs
  .readFileSync(BOJkey ? './javascript/1026/input.txt' : './dev/stdin')
  .toString()
  .trim()
  .split('\n')
  .map(el => el.split(' ').map(Number));

const [N] = input.shift();

ascArr = input.shift().sort((a, b) => a - b);
descArr = input.pop().sort((a, b) => b - a);

let answer = 0;
for (let i = 0; i < N; i++) {
  answer += ascArr[i] * descArr[i];
}

console.log(answer);