题意:给定n个点的坐标,设计一条路线,从左边的点出发,走到最右边的点然后返回,每个点除了起点和终点最多只能经历一次,求其中的最短路径。

思路:dp,可以考虑成2个人从起点出发,然后到达终点,dp(i,j)表示1-max(i,j)全部都走过,并且第一个人在i点,第二个在j点,还要走多远距离。

code:

#include <bits/stdc++.h>
using namespace std;const int N=55;
#define ft(i,s,t) for (int i=s;i<=t;i++)
#define frt(i,t,s) for (int i=t;i>=s;i--)
double x[N],y[N],d[N][N],ds[N][N];
int main()
{int n;while (~scanf("%d",&n)){ft(i,1,n) scanf("%lf %lf",&x[i],&y[i]);//memset(d,0,sizeof(d)); memset(ds,0,sizeof(ds));ft(i,1,n) ft(j,1,n) ds[i][j]=sqrt((x[i]-x[j])*(x[i]-x[j])+(y[i]-y[j])*(y[i]-y[j]));frt(i,n-1,2) ft(j,1,i-1)if (i==n-1) d[i][j]=ds[j][n]+ds[i][n];else d[i][j]=min(d[i+1][j]+ds[i][i+1],d[i+1][i]+ds[j][i+1]);printf("%.2f\n",ds[1][2]+d[2][1]);}
}

uva 1347——Tour相关推荐

  1. UVa 1347 旅行

    https://vjudge.net/problem/UVA-1347 思路:用d(i,j)表示第一个人走到i,第二个人走到j,还需要走多长的距离.在这里强制定义i>j,并且每次只能走到i+1. ...

  2. 记忆化搜索,动态规划(旅行,uva 1347)

    看到这题想起了一个网络流的题目,就是说找两条不相交的路,使得总花费最短,解决办法是拆点法. 这道题用网络流做边太多了,估计不行... #include<bits/stdc++.h> #de ...

  3. 紫书《算法竞赛入门经典》

    紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...

  4. UVa 207 - PGA Tour Prize Money

    时间限制:3.000秒 题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&catego ...

  5. UVA - 207 PGA Tour Prize Money

    /*法一:代码借鉴修改自blog:http://blog.csdn.net/aozil_yang/article/details/50543965这个博客把思路和注意的地方说得很详细了,建议一看收获: ...

  6. UVA 207 PGA Tour Prize Money

    题目链接:https://vjudge.net/problem/UVA-207 题目翻译摘自<算法禁赛入门经典> 题目大意 你的任务是为PGA(美国职业高尔夫球协会)巡回赛计算奖金.巡回赛 ...

  7. PGA Tour PRize Money(Uva 207)

    //生无可恋,看的别人的代码,有时间理解,20ms <code class="hljs cpp has-numbering"><span class=" ...

  8. 例题5-10 UVA 207 PGA Tour Prize Money PGA巡回赛的奖金

    这个题真是快把自己折磨疯了,在学校因为要复习,折腾了10天才AC,结果电脑出了点问题代码数据全部丢失,放假后又写了一遍,结果不断RE一天,唉! 这个题的题意就不说了,紫书上说的很详细了,关键是一点,什 ...

  9. UVa 207 - PGA Tour Prize Money(模拟)

    分配PGA奖金的问题,题目不难,但是细节比较坑. 要注意数据的读入,排名带T的条件,奖金精度的控制等很多细节. #include<algorithm> #include<cstdio ...

最新文章

  1. 如何删除springboot中的子项目
  2. 1121 Damn Single (25 分)
  3. 计算机一级专题训练,计算机等级考试一级MSOFFICE综合训练试题
  4. Spring Boot 学习系列(04)—分而治之,多module打包
  5. 记录——《C Primer Plus (第五版)》第十章编程练习第七题
  6. MEF体验使用接口导出的优越性
  7. C++.Net在Release方式下单步调试时需要修改一些设置,否则变量会有错位或乱码,切记!...
  8. AWVS13安装教程
  9. 火星坐标-84坐标-百度地图坐标相互转换
  10. iphone型号表_iPhone12各版本有什么区别 苹果12四款机型配置表一览
  11. 【补遗】- OC学习小窍门及文件操作(归档)
  12. java多个文件压缩并加密
  13. 【历史上的今天】7 月 5 日:Google 之母出生;同一天诞生的两位图灵奖先驱
  14. Linux·触摸屏驱动实例
  15. 【微信小程序】-- 自定义组件 - 数据监听器 (三十四)
  16. Linux 环境下iSCSI Target 与 Initiator 配置
  17. (王道考研计算机网络)第一章计算机网络体系结构-第一节计算机网络概述1:计网的概念、组成、功能和分类
  18. windows SVN server
  19. 下载的时候提示:“写入到文件时产生错误(请用磁盘检查工具检查修复)”的解决办法
  20. 修正波逆变器的设计要点

热门文章

  1. css常用属性初总结:伪元素和伪元素
  2. 前端之bootstrap模态框
  3. css渲染(二) 文本
  4. Rabbitmq - 配置
  5. express接受get数据
  6. Python开发【第六篇】:模块
  7. .典型用户 - 场景
  8. java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 解决方案
  9. ORACLE10g R2及PATH官方下载地址
  10. 分段函数if语句_C语言函数系列之库函数中基础必会函数(一)