动态规划2(c++)

酒鬼

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int a[10010];
	for(int i = 1;i<=n;i++)
	{
		cin>>a[i];
	}
	int dp[1010][5] = {0};
	dp[0][0] = 0;
	dp[1][0] = 0;
	dp[1][1] = a[1];
	dp[1][2] = 0;
	dp[2][0] = a[1];
	dp[2][1] = a[2];
	dp[2][2] = a[1]+a[2];
	for(int i = 3;i<=n;i++)
	{
		dp[i][0] = max(max(dp[i-1][0],dp[i-1][1]),dp[i-1][2]);
		dp[i][1] = dp[i-1][0]+a[i];
		dp[i][2] = dp[i-1][1]+a[i];
	}
//	for(int i = 1;i<=n;i++)
//	{
//		for(int j = 0;j<=2;j++)
//		{
//			cout<<setw(3)<<dp[i][j];
//		}
//		cout<<endl;
//	}
	cout<<max(max(dp[n][0],dp[n][1]),dp[n][2]);
	return 0;
}
cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int m;
	cin>>m;
	int dp[1010][10] = {0};
	dp[0][0] = 1;
	dp[1][0] = 1;
	dp[1][1] = 1;
	for(int i = 2;i<=n;i++)
	{
		for(int j = 0;j<m;j++)
		{
			dp[i][0] += dp[i-1][j];
		}
		for(int j = 1;j<m;j++)
		{
			dp[i][j] = dp[i-1][j-1];
		}
	}
	long long sum = 0;
	for(int i = 0;i<m;i++)
	{
		sum += dp[n][i];
	}
	cout<<sum;
	return 0;
}
cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int sh[10010];
	int z[10010];
	int y[10010];
	sh[1] = 1;
	z[1] = 1;
	y[1] = 1;
	for(int i = 2;i<=n;i++)
	{
		sh[i] = (sh[i-1]+z[i-1]+y[i-1])%12345;
		z[i] = (z[i-1]+sh[i-1])%12345;
		y[i] = (y[i-1]+sh[i-1])%12345;
	}
	cout<<sh[n]+z[n]+y[n];
	return 0;
}
相关推荐
小龙报11 分钟前
【51单片机】从 0 到 1 玩转 51 蜂鸣器:分清有源无源,轻松驱动它奏响新年旋律
c语言·数据结构·c++·stm32·单片机·嵌入式硬件·51单片机
Dimpels17 分钟前
CANN ops-nn 算子解读:AIGC 批量生成中的 Batch 处理与并行算子
开发语言·aigc·batch
石去皿22 分钟前
【嵌入式就业6】计算机组成原理与操作系统核心机制:夯实底层基础
c++·面试·嵌入式
王老师青少年编程23 分钟前
2024年信奥赛C++提高组csp-s初赛真题及答案解析(完善程序第1题)
c++·题解·真题·初赛·信奥赛·csp-s·提高组
blueSatchel26 分钟前
U-Boot载入到DDR过程的代码分析
linux·开发语言·u-boot
无小道35 分钟前
QT——QFIie和QFileInfo文件类
开发语言·qt·命令模式
踢足球09291 小时前
寒假打卡:2026-2-7
java·开发语言·javascript
一只小小的芙厨1 小时前
AT_tkppc3_d 巨大チェスボード 题解
c++·题解
我在人间贩卖青春1 小时前
C++之继承与派生类的关系
c++·向上造型·向下造型
Trouvaille ~1 小时前
【Linux】应用层协议设计实战(二):Jsoncpp序列化与完整实现
linux·运维·服务器·网络·c++·json·应用层