按摩师(动态规划)

一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约 服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师找到最 优的预约集合(总预约时间最长),返回总的分钟数。

注意:本题相对原题稍作改动

复制代码
#include<iostream>
#include<vector>
using namespace std;

int MaxVal(int* num, int n)
{
	if (n == 1)	return num[1];
	if (n == 2)	return num[1] > num[2] ? num[1] : num[2];
	vector<int> dp(n + 1, 0);
	dp[1] = num[1];
	for (int i = 2; i <= n; ++i)
	{
		dp[i] = max(dp[i - 1], num[i] + dp[i - 2]);
	}
	return dp[n];
}
int main()
{
	int num[] = { 0,2,7,9,3,1 };
	int n = sizeof(num) / sizeof(num[0]);
	int maxval = MaxVal(num, n);
	cout << maxval << endl;
	return 0;
}
相关推荐
第二只羽毛19 分钟前
C++ 高性能编程要点
大数据·开发语言·c++·算法
CQ_YM1 小时前
数据结构之栈
数据结构·算法·
爱学习的梵高先生1 小时前
C++:基础知识
开发语言·c++·算法
xlq223221 小时前
24.map set(下)
数据结构·c++·算法
繁华似锦respect2 小时前
C++ & Linux 中 GDB 调试与内存泄漏检测详解
linux·c语言·开发语言·c++·windows·算法
立志成为大牛的小牛2 小时前
数据结构——五十四、处理冲突的方法——开放定址法(王道408)
数据结构·学习·程序人生·考研·算法
代码游侠2 小时前
复习——栈、队列、树、哈希表
linux·数据结构·学习·算法
碧海银沙音频科技研究院2 小时前
基于物奇wq7036与恒玄bes2800智能眼镜设计
arm开发·人工智能·深度学习·算法·分类
小白程序员成长日记3 小时前
2025.12.03 力扣每日一题
算法·leetcode·职场和发展
元亓亓亓3 小时前
LeetCode热题100--20. 有效的括号--简单
linux·算法·leetcode