๐งธ ์ฒ์์ ์๋ชป๋ ๋ฐฉ์์ผ๋ก ์ ๊ทผํ๋ค ๋ฐ๋ก๋ฅผ ๋ฃ์ด๋ณด๋ค ๊นจ๋ซ๊ณ "๋ค์์๋ถํฐ"๋ผ๋ ํํธ๋ฅผ ์ป์ด์ ํ์๋ค.
์ฝ๋
const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');
const test = +input.shift();
for (let t = 0; t < test; t++) {
const day = +input[t * 2];
const cost = input[t * 2 + 1].split(" ").map(Number);
let buy = 0;
let count = 0;
let sell = 0;
//๋ท๋ (๊ธฐ์ค)
let back = day - 1;
//์๋ (๋น๊ต๋์)
let front = back - 1;
while (true) {
if (cost[front] >= cost[back]) {
sell += count * cost[back];
count = 0;
back = front;
front = back - 1;
} else {
buy += cost[front];
count++;
front--;
}
if (front < 0) {
sell += count * cost[back];
console.log(Number(sell - buy));
break;
}
}
}