博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
uva216-网络连接
阅读量:4710 次
发布时间:2019-06-10

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

此题为暴力求解法回溯法的训练参考

 

翻译请戳

 

解题思路

回溯。

可以用数组存储中间路径,

如果链接完毕且小于最小值,将中间路径存入最终路径。

详见代码。

 

代码

#include
#include
#include
const int maxLen = 10;typedef struct point { int x, y;} Point;Point setP[maxLen];Point Path[maxLen];  //存储“中间”路径Point Final[maxLen]; //存储“最终”路径bool connet[maxLen];int n;double min;double dist(Point A, Point B){ return sqrt((A.x-B.x)*(A.x-B.x)+(A.y-B.y)*(A.y-B.y));}void Search(int start, int left, double res){ if(res>min) return ; else if(left == 0) { min = res; for(int i=0; i
0; i--) { printf("Cable requirement to connect (%d,%d) to (%d,%d) is %.2lf feet.\n", Final[i].x, Final[i].y, Final[i-1].x, Final[i-1].y, dist(Final[i], Final[i-1])+16.0); } printf("Number of feet of cable required is %.2lf.\n", min); scanf("%d", &n); } return 0;}

 

转载于:https://www.cnblogs.com/ZengWangli/p/5763223.html

你可能感兴趣的文章
修改dede标题长度限制 改此参数后…
查看>>
ubuntu下安装Docker
查看>>
mysql的字符编码
查看>>
《编程之美》读书笔记 -- 1.4买书问题
查看>>
稳定排序
查看>>
libev & libevent简介
查看>>
ProtoBuffer优势
查看>>
@Repository、@Service、@Controller 和 @Component
查看>>
bootstrap-wysihtml5设置值
查看>>
Windows常用快捷键与常用命令
查看>>
290. Word Pattern 单词匹配模式
查看>>
project1
查看>>
const char*, char const*, char*const的区别
查看>>
vue踩坑记-在项目中安装依赖模块npm install报错
查看>>
mySQL优化, my.ini 配置说明
查看>>
mysql系统数据库
查看>>
alwayson监控
查看>>
浅谈 js 函数调用
查看>>
进程与线程
查看>>
python面试题
查看>>