当前位置: 首页 > article >正文

At dp综合

感觉整体比较板,但还是挺有质量的)

A Frog 1(直接dp)
#include<bits/stdc++.h>
using namespace std;
int n,a[100005],f[100005];
int main()
{
	scanf("%d",&n);
	for(int i=1;i<=n;i++) scanf("%d",a+i),f[i]=1e9;
	f[1]=0;f[0]=1e9;
	for(int i=2;i<=n;i++) f[i]=min(f[i-1]+abs(a[i-1]-a[i]),f[i-2]+abs(a[i]-a[i-2]));
	cout<<f[n];
	return 0;
}
B Frog 2(直接dp)

        数据范围完全可以直接nk做

#include<bits/stdc++.h>
using namespace std;
int n,m,a[100005],f[100005];
int main()
{
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++) scanf("%d",a+i),f[i]=1e9;
	f[1]=0;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=min(i-1,m);j++)
			f[i]=min(f[i],f[i-j]+abs(a[i]-a[i-j]));
	cout<<f[n];
	return 0;
}
C Vacation(直接dp)

        简单分类讨论一下即可

#include<bits/stdc++.h>
#define N 100005
using namespace std;
int n,a[N],b[N],c[N],f[N][4];
int main()
{
	scanf("%d",&n);
	for(int i=1;i<=n;i++) scanf("%d%d%d",a+i,b+i,c+i);
	for(int i=1;i<=n;i++)
		f[i][1]=max(f[i-1][2],f[i-1][3])+a[i],
		f[i][2]=max(f[i-1][1],f[i-1][3])+b[i],
		f[i][3]=max(f[i-1][1],f[i-1][2])+c[i];
	cout<<max(max(f[n][1],f[n][2]),f[n][3]);
	return 0;
}
D Knapsack 1(01背包)

        纯板子     f[i]=max(f[i],f[i-w]+v)

#include<bits/stdc++.h>
using namespace std;
long long n,W,w,u,ans,f[100005];
int main()
{
	scanf("%lld%lld",&n,&W);
	for(int i=1;i<=n;i++)
	{
		scanf("%lld%lld",&w,&u);
		for(int j=W;j>=w;j--) f[j]=m

http://www.kler.cn/a/372527.html

相关文章:

  • Gin-vue-admin(1):环境配置和安装
  • SQL,生成指定时间间隔内的事件次序号
  • 浅谈算法交易
  • 蓝桥杯物联网开发板硬件组成
  • 目标检测-R-CNN
  • 鸿蒙Next之包体积极限优化
  • react基础之reactHooks
  • JetPack Compose安卓开发之底部导航Tabbar
  • Windows on ARM上使用sherpa-onnx实现语音识别
  • MFC界面开发组件Xtreme Toolkit Pro v24全新发布—完整的SVG支持
  • FPGA 第一讲
  • 快速生成高质量提示词,Image to Prompt 更高效
  • 简道云和企业微信数据同步集成案例
  • Python 操作 读/写 Excel
  • 电科金仓(人大金仓)更新授权文件(致命错误: XX000: License file expired.)
  • 鸿蒙系统开发入门:一步步踏上创新之旅
  • conda使用指南
  • 100种算法【Python版】第24篇——Bellman-Ford算法
  • Java异常2
  • 计算机网络-常用网络命令和工具
  • 华为配置手工负载分担模式链路聚合实验
  • 树莓派4处理器超频指南
  • 输电线路火灾隐患监测系统功能与应用是什么?
  • 基于Springboot+微信小程序的任务打卡系统(含源码数据库)
  • 网络搜索引擎Shodan(2)
  • CSS - grid制作表格