动态规划 练习(c++)

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int n;
int a[1010];
int dp[1010];
int ldp;
int main()
{
	cin>>n;
	for(int i = 1;i<=n;i++)
	{
		cin>>a[i];
	}
	for(int i = 1;i<=n;i++)
	{
		bool f = false;
		for(int j = 1;j<=ldp;j++)
		{
			if(dp[j]<a[i])
			{
				dp[j] = a[i];
				f = true;
				break;
			}
		}
		if(f==false)
		{
			dp[++ldp] = a[i];
		}
	}
	cout<<ldp;
	return 0;
}
cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int n;
int a[1010];
int dp[1010];
int ldp;
int main()
{
	cin>>n;
	for(int i = 1;i<=n;i++)
	{
		cin>>a[i];
	}
	dp[1] = a[1];
	dp[2] = max(a[1],a[2]);
	for(int i = 3;i<=n;i++)
	{
		dp[i] = max(max(dp[i-2]+a[i],dp[i-2]),dp[i-1]);
	}
	cout<<dp[n];
	return 0;
}
cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int n;
int a[100010];
int dp[100010];
int main()
{
	cin>>n;
	long long A,B,C;
	cin>>A>>B>>C;
	for(int i = 1;i<=n;i++)
	{
		a[i] = (A*i*i+B*i+C)%20000-10000;
	}
	dp[0] = 0;
	dp[1] = a[1];
	for(int i = 2;i<=n;i++)
	{
		dp[i] = max(max(dp[i-1]+a[i],dp[i-2]+a[i]),dp[i-1]);
	}
	cout<<dp[n];
	return 0;
}
cpp 复制代码
#include <bits/stdc++.h>
#define ll long long
using namespace std;
int n;
int a[100010];
int dp[100010];
int x;
ll sum;
int main()
{
	cin>>n>>x;
	a[1] = x;
	for(int i = 2;i<=n;i++)
	{
		a[i] = (379*a[i-1]+131)%997;
	}
	dp[1] = a[1];
	sum += dp[1];
	for(int i = 2;i<=n;i++)
	{
		dp[i] = max(a[i],dp[i-1]);
		sum += dp[i];
	}
	cout<<sum;
	return 0;
}
cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int n;
int a[100010];
int dp[100010];
int main()
{
	cin>>n;
	long long A,B,C;
	cin>>A>>B>>C;
	for(int i = 1;i<=n;i++)
	{
		a[i] = (A*i*i+B*i+C)%20000-10000;
	}
	dp[0] = 0;
	dp[1] = a[1];
	for(int i = 2;i<=n;i++)
	{
		dp[i] = min(min(dp[i-1]+a[i],dp[i-2]+a[i]),dp[i-1]);
	}
	cout<<dp[n];
	return 0;
}
相关推荐
Han.miracle34 分钟前
数据结构——二叉树的从前序与中序遍历序列构造二叉树
java·数据结构·学习·算法·leetcode
北冥湖畔的燕雀1 小时前
C++泛型编程(函数模板以及类模板)
开发语言·c++
mit6.8243 小时前
前后缀分解
算法
你好,我叫C小白3 小时前
C语言 循环结构(1)
c语言·开发语言·算法·while·do...while
Larry_Yanan6 小时前
QML学习笔记(四十二)QML的MessageDialog
c++·笔记·qt·学习·ui
寂静山林6 小时前
UVa 10228 A Star not a Tree?
算法
Neverfadeaway6 小时前
【C语言】深入理解函数指针数组应用(4)
c语言·开发语言·算法·回调函数·转移表·c语言实现计算器
R-G-B6 小时前
【35】MFC入门到精通——MFC运行 不显示对话框 MFC界面不显示
c++·mfc·mfc运行 不显界面·mfc界面不显示
Madison-No76 小时前
【C++】探秘vector的底层实现
java·c++·算法
晚风残7 小时前
【C++ Primer】第十二章:动态内存管理
开发语言·c++·c++ primer