Trip to Cote
[백준/node.js] 10828번 차이를 최대로 (못 풀었음)
Kestrel
2023. 8. 8. 10:45

나는 큰 수 옆에 작은 수를 배치시키면 최대값이 나올거라 생각했는데 답을 보니 경우의 수를 다 따져야했다.
계속 최대값이 62라고?만 속으로 외쳤던 듯... 오늘은 패배;
const fs = require("fs");
const [n, input] = fs.readFileSync("/dev/stdin").toString().trim().split("\n");
const arr = input.trim().split(" ").map(Number);
const sortArr = arr.sort((a, b) => a - b);
let answer = [];
let count = 0;
let sum = 0;
for (let i = 1; i <= arr.length; i++) {
if (i % 2 === 1) {
answer.push(sortArr[count]);
} else {
answer.push(sortArr[arr.length - count - 1]);
count++;
}
}
console.log(answer);
for (let i = 0; i < arr.length - 1; i++) {
sum += Math.abs(answer[i] - answer[i + 1]);
console.log(`지금 sum의 값` + sum);
}
console.log(sum);