알고리즘 풀이

[JAVASCRIPT] 백준 1026번 문제 풀이

Lv1_junior_dev 2023. 4. 4. 20:40

❗ 풀이

let input = require('fs').readFileSync('dev/stdin').toString().trim().split('\n');
const n = parseInt(input[0]);
const a = input[1].split(' ').map(Number);
const b = input[2].split(' ').map(Number);

let sum = 0;

a.sort((x, y) => x - y);

b.sort((x, y) => y - x);

for (let i = 0; i < n; i++) {
  sum += a[i] * b[i];
}

console.log(sum);

 

1. 첫 번째 줄에 있는 정수값을 n에 저장

2. 두 번째와 세 번째 줄에 있는 문자열을 공백으로 구분하여 숫자 배열로 변환

3. 결과값을 저장할 변수를 0으로 초기화합니다.

4. 배열 a를 오름차순으로, 배열 b를 내림차순으로 정렬

5. 배열 a와 b의 각 원소들을 곱한 값을 더하기 위해 for문 사용

6. 각 원소들을 곱한 값을 sum 변수에 더한 후 결과 출력