最新消息:

信息学奥赛题库- 【01NOIP提高组】Car的旅行路线

C++ 少儿编程 1161浏览 0评论

【题目描述】

又到暑假了,住在城市$A$的Car想和朋友一起去城市$B$旅游。她知道每个城市都有四个飞机场,分别位于一个矩形的四个顶点上,同一个城市中两个机场之间有一条笔直的高速铁路,第$i$个城市中高速铁路了的单位里程价格为$T_i$,任意两个不同城市的机场之间均有航线,所有航线单位里程的价格均为$t$。

图例

机场

高速铁路

机航线

注意:图中并没有

标出所有的铁路与航线。

那么Car应如何安排到城市B的路线才能尽可能的节省花费呢?她发现这并不是一个简单的问题,于是她来向你请教。

任务

找出一条从城市A到B的旅游路线,出发和到达城市中的机场可以任意选取,要求总的花费最少。

【输入】

第一行为一个正整数$n(0≤n≤10)$,表示有n组测试数据。

每组的第一行有四个正整数$s,t,A,B$。

$S(0<S≤100)$表示城市的个数,$t$表示飞机单位里程的价格,$A,B$分别为城市$A,B$的序号,$(1≤A,B≤S)$。

接下来有$S$行,其中第$i$行均有$7$个正整数$x_{i1},y_{i1},x_{i2},y_{i2},x_{i3},y_{i3},T_i$,这当中的($x_{i1},y_{i1}$),($x_{i2},y_{i2}$),($x_{i3},y_{i3}$)分别是第I个城市中任意三个机场的坐标,$T_i$为第$i$个城市高速铁路单位里程的价格。

【输出】

共有n行,每行一个数据对应测试数据。

【输入样例】

1
3 10 1 3
1 1 1 3 3 1 30
2 5 7 4 5 2 1
8 6 8 8 11 6 3

【输出样例】

47.55

您必须 登录 才能发表评论!