๐ก dp๋ฐฐ์ด์ ๋ถ๋ถ ์์ด ๋ฐฐ์ด์ ๋ฃ์ด์ฃผ์๋ค.
์ฝ๋
const fs = require('fs');
let input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');
const length = +input.shift();
input = input[0].split(" ").map(Number);
const dp = Array.from(new Array(length), () => []);
for (let i = 0; i < length; i++) {
let max = [];
for (let j = i - 1; j >= 0; j--) {
if (input[i] > input[j] && max.length < dp[j].length) {
max = dp[j];
}
}
dp[i] = [...max, input[i]];
}
dp.sort((a, b) => a.length - b.length);
console.log(dp[length - 1].length);
console.log(dp[length - 1].join(" "));