题解 | #删除相邻数字的最大分数#
删除相邻数字的最大分数
http://www.nowcoder.com/practice/ddaaf110911a453da61e8e020df86a6c
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param a int整型vector
* @return int整型
*/
int boredom(vector<int>& a) {
// write code here
const int n = *max_element(a.begin(), a.end()) + 1;
vector<int> dp(n);
for (int i=0; i<a.size(); ++i) {
dp[a[i]] += a[i];
}
for (int i=2; i<n; ++i) {
dp[i] = max(dp[i-1], dp[i] + dp[i-2]);
}
return dp[n-1];
}
};