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

P1359 洛谷 租用游艇

题目要求

在这里插入图片描述

思路

这个题和那个洛谷的“高手去爬山”很像,那个是已知就几条边有权重,这个输入的是个半矩阵,而且数据量小于200,其实挺大的,不能用深搜了

错误想法
求最少租金,最小值,考虑dp,从出租站1到出租站n所需最少租金,这个就是区间dp的问法啊,合并石子那道区间dp题,求从第一堆到最后一堆合并石子所需要的最小力气,也相当于板子题了,但这个是求最小价值,区间类一般用于合并类问题(石子合并,矩阵连乘)
for三重循环,区间长度,左端点,划分点

再想:从1->n, 求最短,不就是单源最短路,用dijstra算法!
再想: 线性dp:dp[j]表示到j站的最小价格,和最长上升子序列有点像,第j站已经固定,但不确定上一站有没有

代码

动态规划

  • 化零为整
    dp[j]表示从第1站到第j站的最小租金,属性:最小值
  • 化整为零
    可能是从第1站直接到第j站,也可能是中间经过了第k站,再到第j站(很像最长上升子序列)

    dp[j] = min(dp[k] + w[k][j], dp[j])
#include<bits/stdc++.h>

using namespace std;

const int N = 210;
int f[N];
int a[N][N];

int main()
{
	int n;
	cin >> n;
	//讨论一下读入 1-2 1-3 2 - 3, 相当于是上三角形,不一定要按照她给的输入
	for(int i = 1; i <= n; i++)
	{
		for(int j =i + 1; j <= n; j++)
		{
			cin >> a[i][j];
		}
	}
	for(int i = 2; i <= n; i++)
	{
		f[i] = a[1][i];  //初始化,从第一站,到任意一站
	}
//	//测试读入是否正确
//	for(int i = 1; i <= n; i++)
//	{
//		for(int j = 1; j <= n; j++)
//			cout << a[i][j]<<" ";
//		cout<<endl;
//	}

	for(int len = 1; len <= n; len++) //区间长度
	{
		int j = 1 + len - 1;
			for(int k = 2; k < j; k++)
			{
				f[j] = min(f[j], f[k] + a[k][j]);
			}
	}
	
	cout<<f[n]<<endl;
	return 0;
}

Dijkstra

等主播学完图论再补充

http://www.dtcms.com/a/123152.html

相关文章:

  • GPU NPU TPU的区别与联系
  • Jupyter notebook使用技巧
  • MIT6.S081 - Lab7 Multithreading(进程调度)
  • 玩转Docker | 使用Docker搭建Van-Nav导航站
  • KTH5772 系列游戏手柄摇杆专用3D 霍尔位置传感器
  • dify+wan2.1搭建文生视频生成工具流
  • 代码随想录-06-二叉树-05.05 N叉树的层序遍历
  • Mysql索引(四)
  • 光芯片一般性可靠性检测条目
  • 辉视客房控制系统:打造智慧酒店的六大核心价值
  • 【Linux】网络编程
  • 从质检到实验:Python三大T检验实战案例
  • 【Raqote】 1.3 路径填充ShaderClipBlendMaskBlitter结构体(blitter.rs)
  • Vue报错...properly without JavaScript enabled. Please enable it to continue
  • P1216 洛谷 数字三角形
  • 文件相关:echo重定向管道命令扩展详解
  • 论坛系统(测试报告)
  • 1.5SMC62A 单向瞬态抑制二极管,精准防护电路过压
  • 汽车软件开发常用的需求管理工具汇总
  • 校园食堂采购管理系统源码开发指南:探索数据大屏可视化建设
  • 微服务多模块构建feign项目过程与一些报错(2025详细版)
  • 【Java学习】如何利用AI学习Java语言开发(二)
  • linux shell编程规范与变量(一)
  • 25.4.10学习总结
  • 大数据Hadoop(MapReduce)
  • SQL 不走索引的常见情况
  • 小白电路设计-设计7-固定式倍压器直流稳压电源电路设计
  • Elasticsearch 系列专题 - 第三篇:搜索与查询
  • 超越肉眼所见:一种利用视网膜光学相干断层扫描血管成像(OCTA)图像进行早期痴呆检测的关联模型|文献速递-深度学习医疗AI最新文献
  • linux内核