NOIP2001T4car的旅行计划
一看数据就是floyed(毕竟年代久远),然而建图不是那么好贱好建,只知道三个机场,需要判断斜边来求第4个机场坐标。
往后一些麻烦的建图。
最后floyed就好。
——代码
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int n, s, a, b;
][], y[][], T[];
][], ans;
inline int square(int ax)
{
return ax * ax;
}
inline int dis(int ax, int ay, int bx, int by)
{
return square(ax - bx) + square(ay - by);
}
int main()
{
int i, j, k;
scanf("%d", &n);
while(n--)
{
scanf("%d %d %d %d", &s, &t, &a, &b);
; i < * s; i++)
; j < * s; j++)
map[i][j] = ;
ans = ;
; i < s; i++)
{
scanf(], &y[i][], &x[i][], &y[i][], &x[i][], &y[i][], &T[i]);
], y[i][], x[i][], y[i][]) > dis(x[i][], y[i][], x[i][], y[i][])
&& dis(x[i][], y[i][], x[i][], y[i][]) > dis(x[i][], y[i][], x[i][], y[i][]))
{
x[i][] = x[i][] + x[i][] - x[i][];
y[i][] = y[i][] + y[i][] - y[i][];
}
], y[i][], x[i][], y[i][]) > dis(x[i][], y[i][], x[i][], y[i][])
&& dis(x[i][], y[i][], x[i][], y[i][]) > dis(x[i][], y[i][], x[i][], y[i][]))
{
x[i][] = x[i][] + x[i][] - x[i][];
y[i][] = y[i][] + y[i][] - y[i][];
}
], y[i][], x[i][], y[i][]) > dis(x[i][], y[i][], x[i][], y[i][])
&& dis(x[i][], y[i][], x[i][], y[i][]) > dis(x[i][], y[i][], x[i][], y[i][]))
{
x[i][] = x[i][] + x[i][] - x[i][];
y[i][] = y[i][] + y[i][] - y[i][];
}
map[ * i][ * i + ] = map[ * i + ][ * i] = sqrt(dis(x[i][], y[i][], x[i][], y[i][])) * T[i];
map[ * i][ * i + ] = map[ * i + ][ * i] = sqrt(dis(x[i][], y[i][], x[i][], y[i][])) * T[i];
map[ * i][ * i + ] = map[ * i + ][ * i] = sqrt(dis(x[i][], y[i][], x[i][], y[i][])) * T[i];
map[ * i + ][ * i + ] = map[ * i + ][ * i + ] = sqrt(dis(x[i][], y[i][], x[i][], y[i][])) * T[i];
map[ * i + ][ * i + ] = map[ * i + ][ * i + ] = sqrt(dis(x[i][], y[i][], x[i][], y[i][])) * T[i];
map[ * i + ][ * i + ] = map[ * i + ][ * i + ] = sqrt(dis(x[i][], y[i][], x[i][], y[i][])) * T[i];
; j < * i; j++)
* i; k < * i + ; k++)
map[k][j] = map[j][k] = sqrt(dis(x[j / ][j % + ], y[j / ][j % + ], x[k / ][k % + ], y[k / ][k % + ])) * t;
}
; i < * s; i++) map[i][i] = ;
; k < * s; k++)
; i < * s; i++)
; j < * s; j++)
map[i][j] = min(map[i][j], map[i][k] + map[k][j]);
* a - ; i < * a; i++)
* b - ; j < * b; j++)
ans = min(ans, map[i][j]);
printf("%.1f\n", ans);
}
;
}
NOIP2001T4car的旅行计划的更多相关文章
- COGS 2. 旅行计划
2. 旅行计划 ★☆ 输入文件:djs.in 输出文件:djs.out 简单对比时间限制:3 s 内存限制:128 MB 过暑假了,阿杜准备出行旅游,他已经查到了某些城市的两两之间的距 ...
- Crash的旅行计划
除草了.. Crash的旅行计划 [问题描述] 过不了多久,Crash就要迎来他朝思暮想的暑假.在这个暑假里,他计划着到火星上旅游.在火星上有N个旅游景点,Crash用1至N这N个正整数对这些景点标号 ...
- 【51Nod】1273 旅行计划 树上贪心
[题目]51Nod 1273 旅行计划 [题意]给定n个点的树和出发点k,要求每次选择一个目的地旅行后返回,使得路径上未访问过的点最多(相同取编号最小),旅行后路径上所有点视为访问过,求旅行方案.\( ...
- 51nod 1273 旅行计划——思维题
某个国家有N个城市,编号0 至 N-1,他们之间用N - 1条道路连接,道路是双向行驶的,沿着道路你可以到达任何一个城市.你有一个旅行计划,这个计划是从编号K的城市出发,每天到达一个你没有去过的城市, ...
- 洛谷P1137 旅行计划
P1137 旅行计划 题目描述 小明要去一个国家旅游.这个国家有N个城市,编号为1-N,并且有M条道路连接着,小明准备从其中一个城市出发,并只往东走到城市i停止. 所以他就需要选择最先到达的城市,并制 ...
- 洛谷 P1137 旅行计划
旅行计划 待证明这样dp的正确性. #include <iostream> #include <cstdio> #include <cstring> #includ ...
- 51nod-1273: 旅行计划
[传送门:51nod-1273] 简要题意: 给出一棵树,点数为n,现在你有一个旅行计划,从k城市出发,每天前往一个没去过的城市,并且旅途中经过的没有去过的城市尽可能的多(如果有2条路线,经过的没有去 ...
- 牛客-小a的旅行计划 + 数学推导
小a的旅行计划 题意: 小a终于放假了,它想在假期中去一些地方游玩,现在有N个景点,编号为,同时小b也想出去游玩.由于一些特殊♂原因,他们的旅行计划必须满足一些条件 首先,他们可以从这N个景点中任意选 ...
- Problem 2 旅行计划 (travelling .cpp)———2019.10.6
lth tql,lzpclxf tql Orz Problem 2 旅行计划 (travelling.cpp)[题目描述]小 Z 打算趁着暑假,开启他的旅行计划.但与其他同学不同的是,小 Z 旅行时并 ...
随机推荐
- Linux实战教学笔记21:Rsync数据同步工具
第二十一节 Rsync数据同步工具 标签(空格分隔): Linux实战教学笔记-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载,转载 ...
- select函数的用法
首先介绍阻塞方式与非阻塞方式: 阻塞方式(block),就是进程或是线程执行到这些函数时必须等待某个事件的发生.如果事件没有发生,进程或线程就被阻塞,函数不能立即返回. 非阻塞方式(non-block ...
- WCF小试
1.创建WCF 右键解决方案-新建项目-WCF服务应用程序. 创建后会生成一些文件,其中IService.cs是服务的接口,只有在接口中定义的方法才能被外部调用,Service.svc是我们的服务名称 ...
- JS判断手机当前的系统类型
<script language="javascript"> window.onload = function () { var n = navigator.userA ...
- APICloud使用
APICloud-APP开发平台 [网址:]http://www.apicloud.com/ APICloud studio 下载 打开网址,找到开发者社区->文档->下载->开发工 ...
- Asp.net MVC 视图使用像Ajax,ViewBag提示为找到上下文
不知是什么原因,所有的视图中Ajax,ViewBag之类的都提示为找到上下文(由于换了个版本Vs,猜测应该是Vs的原因),然后顺利在网上找到了解决方案. 给地址链接:https://social.ms ...
- 深入理解java虚拟机之——JVM垃圾回收策略总结
如何判断一个对象是否存活 引用计数算法:给对象中添加一个引用计数器,每当有引用它时,计数器值就加1:当引用失效时,计数器值就减1:任何时刻计数器为0的对象就是不可能再被使用. Java虚拟机里面没有 ...
- [读书系列] 深度探索C++对象模型 初读
2012年底-2014年初这段时间主要用C++做手游开发,时隔3年,重新拿起<深度探索C++对象模型>这本书,感觉生疏了很多,如果按前阵子的生疏度来说,现在不借助Visual Studio ...
- 容斥原理及SQL in关键字在EF中的应用
突然意识到文字的重要性,于是开始写了第一个篇博客,博客目的紧紧为记录,以便温故. 同时也希望抛砖能达到引玉的作用,欢迎各位来发表自己的感想与想法,以此达到相互学习促进! 背景: 在做百度地图电子围栏的 ...
- 自动化测试工具Appium环境搭建
Appium是一个开源.跨平台的测试框架,可以用来测试原生及混合的移动端应用.Appium支持IOS.Android及FirefoxOS平台.Appium使用WebDriver的json wire协议 ...