AC日记——租用游艇 洛谷 P1359
2024-09-13 09:54:34
题目描述
长江游艇俱乐部在长江上设置了n 个游艇出租站1,2,…,n。游客可在这些游艇出租站租用游艇,并在下游的任何一个游艇出租站归还游艇。游艇出租站i 到游艇出租站j 之间的租金为r(i,j),1<=i<=j<=n。试设计一个算法,计算出从游艇出租站1 到游艇出租站n 所需的最少租金。
对于给定的游艇出租站i 到游艇出租站j 之间的租金为r(i,j),1<=i<j<=n,编程计算从游艇出租站1 到游艇出租站n所需的最少租金。
保证计算过程中任何时刻数值都不超过10^6
输入输出格式
输入格式:
由文件提供输入数据。文件的第1 行中有1 个正整数n(n<=200),表示有n个游艇出租站。接下来的n-1 行是一个半矩阵r(i,j),1<=i<j<=n。
输出格式:
程序运行结束时,将计算出的从游艇出租站1 到游艇出租站n所需的最少租金输出到文件中。
输入输出样例
输入样例#1:
3
5 15
7
输出样例#1:
12
思路:
最短路;
有向图!!!!
来,上代码:
#include <queue>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm> using namespace std; struct EdgeType {
int to,dis,next;
};
struct EdgeType edge[**]; int if_z,n,head[],cnt=; char Cget; inline void in(int &now)
{
now=,if_z=,Cget=getchar();
while(Cget>''||Cget<'')
{
if(Cget=='-') if_z=-;
Cget=getchar();
}
while(Cget>=''&&Cget<='')
{
now=now*+Cget-'';
Cget=getchar();
}
now*=if_z;
} inline void edge_add(int u,int v,int w)
{
cnt++;
edge[cnt].to=v;
edge[cnt].dis=w;
edge[cnt].next=head[u];
head[u]=cnt;
} int spfa()
{
queue<int>que;
bool if_[];
int cost[];
memset(cost,0x7f,sizeof(cost));
que.push();if_[]=true,cost[]=;
while(!que.empty())
{
int pos=que.front();que.pop();
for(int i=head[pos];i;i=edge[i].next)
{
if(edge[i].dis+cost[pos]<cost[edge[i].to])
{
cost[edge[i].to]=edge[i].dis+cost[pos];
if(!if_[edge[i].to])
{
que.push(edge[i].to);
if_[edge[i].to]=true;
}
}
}
if_[pos]=false;
}
return cost[n];
} int main()
{
in(n);int pos;
for(int i=;i<n;i++)
{
for(int j=i+;j<=n;j++)
{
in(pos);
edge_add(i,j,pos);
}
}
cout<<spfa();
return ;
}
最新文章
- zw版【转发&#183;台湾nvp系列Delphi例程】HALCON color_fuses1
- 剑指offer系列21--二叉搜索树的后续遍历序列
- shell+Jenkins+jmeter集成
- HDU 1573 X问题 (中国剩余定理)
- Java Concurrency - Concurrent Collections
- Statement和PreparedStatement的特点 MySQL数据库分页 存取大对象 批处理 获取数据库主键值
- C语言之 短路原则
- 开源存储之ceph
- Github Blog 搭建手册
- 【Android 系统开发】CyanogenMod 13.0 源码下载 编译 ROM 制作 ( 手机平台 : 小米4 | 编译平台 : Ubuntu 14.04 LTS 虚拟机)
- ClistCtrl用法及总结(由怎样隐藏ListCtrl列表头的排序小三角形这个bug学习到的知识)
- Spring aop 注解参数说明
- ConstraintLayout知识记录
- iOS中 喷枪打字动画的实现
- [翻译] 介绍EF Core
- ueditor后台配置项返回格式出错,上传功能将不能正常使用
- React Native Android打包apk
- Wim镜像编辑
- 上线---苹果AppStore审核注意事项,Guideline 1.2 - Safety - User Generated Content,2.1等条例(苹果审核六次拒绝)
- ViewBag &; ViewData
热门文章
- Codeforces Round #273 (Div. 2)-B. Random Teams
- iPhone Scrollbars with iScroll
- windows下pycharm使用Anaconda安装包环境
- (21)zabbix创建触发器trigger
- CodeForces 699C - Vacations
- Python中的socket网络编程(TCP/IP,UDP)讲解
- python中datetime模块中datetime对象的使用方法
- H5系列之History(必知必会)
- 练习题,新建数据库anyun
- Visual Studio 2013 滚动条实现代码缩略图