自来水供给
测试数据来自 system/1098
作业已超过截止时间,您无法递交本题目。
时间限制:1秒 内存限制:256M
【问题描述】
有n个村子,坐落在从县城出发的一条公路上,村庄编号为1,2,…,n。
现在要通过安装水管,从县城向各村供给自来水。水管有粗细两种,粗管可供给任意数量的村子,而细管只能供给一个村子。粗管每公里 \(a\) 元,细管每公里 \(b\) 元,显然 \(a>b\)。
问如何搭配粗管和细管,使得费用最低?注意:建设过程中至少要使用一根粗管。
【输入格式】
第 1 行三个整数 \(n,a,b\),村庄数目有 \(n\) 个,粗管单价为 \(a\) 元每公里, 细管单价为 \(b\) 元每公里,且一定有 \(a>b\)。
第 2 行包含 \(n\) 个整数,按与县城的距离从近到远给出相邻村庄之间的距离,第 1 整数表示 1 号村庄与县城的距离,以后的每个数据表示与前一村庄的距离。距离单位为公里,不超过 100。
【输出格式】
一个整数,即最低费用。
【输入输出样例1】
Input
10 8000 2000
30 5 2 4 2 3 2 2 2 5
Output
414000
【输入输出样例说明】
输入数据图示如下:
先从县城安装一根粗管到6号村庄(1,2,3,4,5村庄都可用这根粗管供水),费用为:8000*(30+5+2+4+2+3)=368000元;然后7、8、9、10号村庄与6号村庄各用一根细管连接,费用为:2000*2+2000*4+2000*6+2000*11=46000元。总费用为:368000+46000=414000元。
可以证明,这是最少的费用
【数据限制】
\(50\%\) 的数据满足:\(0 < n < 1001\)
\(100\%\) 的数据满足:\(0 <n < 100001 ,0 < b < a < 1000000000\)
县城或村庄之间的距离不超过100公里。