当前位置:   article > 正文

【java编程提问】_需要在n个城市里安装m个基站,允许有的城市java

需要在n个城市里安装m个基站,允许有的城市java

提问:【java编程】

【问题描述】

有n个大小相仿的村庄坐落在一条直线上,第i(i>1)个村庄距离第1个村庄的距离为Di。需要在这些村庄中建立一些通讯基站,使得每个村庄都被覆盖。

已知有三种不同类型的基站:

(A) 建设成本为cost[0]; 只能覆盖建立基站的村庄,即半径为 0。

(B) 建设成本为cost[1]; 能够覆盖以建立基站为中心,半径 3 以内的村庄。

© 建设成本为cost[2]; 能够覆盖以建立基站为中心,半径 15 以内的村庄。

为方便管理,假设基站只能建立在距离第1个村庄距离为非负整数的位置上。问如何选择基站的位置,使得总费用最小?

【输入形式】

第一行为不定长的单调递增的整型数组,代表在距离第一个村庄距离为Di的位置坐落着第i个村庄。

第二行为长度为3的整型数组,对应 cost[0], cost[1], cost[2].

【输出形式】

最小的总费用。

【样例输入】

0 1 2 3 4 5 6 7 8 9 29 33

2 7 15

【样例输出】

17

【样例说明】

在距离15的位置建立一个C基站,覆盖距离 [0, 31], 花费 15.

在距离33的位置建立一个A基站,覆盖距离 33,花费 2.

总费用 15+2=17
【怎么样使用Java解决】

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/183113
推荐阅读
相关标签
  

闽ICP备14008679号