19 lines
625 B
TypeScript
19 lines
625 B
TypeScript
export {};
|
|
|
|
const input: number[] = require("fs").readFileSync(0,"utf8").toString().trim().split('\n').map(Number);
|
|
const N:number = input[0];
|
|
if(N<=3){
|
|
console.log(N===1 ? input[1] : N===2 ? input[1]+input[2] : Math.max(input[1]+input[3], input[2]+input[3]));
|
|
}
|
|
else{
|
|
let score: number[] = new Array(N+1).fill(0);
|
|
score[1] = input[1];
|
|
score[2] = input[1]+input[2];
|
|
score[3] = Math.max(input[1]+input[3], input[2]+input[3]);
|
|
score.forEach((_,i,arr) => {
|
|
if(i>3){
|
|
arr[i] = Math.max(arr[i-2]+input[i], arr[i-3] + input[i-1] + input[i]);
|
|
}
|
|
});
|
|
console.log(score[N]);
|
|
} |