博客
关于我
例题 9-3 旅行(Tour, ACM/ICPC SEERC 2005, UVa1347)
阅读量:285 次
发布时间:2019-03-03

本文共 769 字,大约阅读时间需要 2 分钟。

原题链接:

分类:DAG
备注:经典问题

#include
using namespace std;const int maxn=1e3+5;struct Point{ int x,y;}p[maxn];int n;double dis[maxn][maxn],res[maxn][maxn];double dp(int i,int j){ if(res[i][j]!=0.0)return res[i][j]; if(i==n-1)return res[i][j]=dis[n-1][n]+dis[j][n]; return res[i][j]=min(dp(i+1,j)+dis[i][i+1],dp(i+1,i)+dis[j][i+1]);}int main(void){ // freopen("in.txt","r",stdin); while(~scanf("%d",&n)){ memset(res,0,sizeof(res)); for(int i=1;i<=n;i++) scanf("%d%d",&p[i].x,&p[i].y); for(int i=1;i<=n;i++) for(int j=i+1;j<=n;j++) dis[i][j]=dis[j][i]=sqrt((p[i].x-p[j].x)*(p[i].x-p[j].x)+(p[i].y-p[j].y)*(p[i].y-p[j].y)); printf("%.2f\n",dp(2,1)+dis[1][2]); } return 0;}

转载地址:http://otel.baihongyu.com/

你可能感兴趣的文章
idea中写mybatis报错
查看>>
CSS浮动属性
查看>>
SVM多类识别
查看>>
svn 撤销已提交的错误修改
查看>>
算法工程师数学理论提高札记(improving)
查看>>
仿微信--主要版本说明
查看>>
Android存储
查看>>
Android网络优化--工具
查看>>
Android网络优化--精准获取流量消耗
查看>>
Android进程的启动流程
查看>>
异步任务--AsyncTask
查看>>
《硬件架构的艺术》学习笔记(3.1)---跨时钟域设计
查看>>
Filecoin官方发布:并不存在“双花”问题!
查看>>
VTK:图表之ShortestPath
查看>>
VTK:IO之DumpXMLFile
查看>>
VTK:IO之JPEGReader
查看>>
VTK:IO之MetaImageReader
查看>>
VTK:IO之WriteVTI
查看>>
VTK:图片之Actor2D
查看>>
VTK:图片之ImageCorrelation
查看>>