题目大意:
给定一个数组,从中删除数字,如果一次操作为删除k,则k-1和k+1也被删除,此次操作的得分为k,问当数组中的数完全被删除时最高得分为多少
解题思路:
考虑到an的范围,可以令arr[i]为操作到数i时的最大得分,则有arr[i]=max(arr[i-2]+arr[i],arr[i-1])
代码:
#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=1e5
题目大意:
给定一个数组,从中删除数字,如果一次操作为删除k,则k-1和k+1也被删除,此次操作的得分为k,问当数组中的数完全被删除时最高得分为多少
解题思路:
考虑到an的范围,可以令arr[i]为操作到数i时的最大得分,则有arr[i]=max(arr[i-2]+arr[i],arr[i-1])
代码:
#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=1e5