仓库建设
题号:NC50542
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 64 M,其他语言128 M
64bit IO Format: %lld

题目描述

L公司在山上有一些工厂。由于这座山处于高原内陆地区(干燥少雨),L公司一般把产品直接堆放在露天,以节省费用。突然有一天,L公司的总裁L先生接到气象部门的电话,被告知三天之后将有一场暴雨,于是L先生决定紧急在某些工厂建立一些仓库以免产品被淋坏。
L公司在山上有N个工厂。如图所示,工厂1在山顶,工厂N在山脚。
由于地形的不同,在不同工厂建立仓库的费用可能不同。工厂i目前已有成品P_i件,在该厂建立仓库的费用为C_i。对于没有建立仓库的工厂,其产品应被运往其他的仓库进行储藏,而由于L公司产品的对外销售处设置在山脚的工厂N,故产品只能往山下运(即只能运往编号更大的工厂的仓库),当然运送产品也是需要费用的,假设一件产品运送1个单位距离的费用是1。假设建立的仓库容量都都是足够大的,可以容下所有的产品。
已知:
  1. 工厂i距离工厂1的距离X_i(其中);
  2. 工厂i目前已有成品数量P_i
  3. 在工厂i建立仓库的费用C_i
请你帮助L公司寻找一个仓库建设的方案,使得总的费用(建造费用+运输费用)最小。

输入描述:

第一行包含一个整数$N$,表示工厂的个数。
接下来$N$行,每行包含三个整数$X_i,$$P_i,$$C_i$,意义如题中所述。

输出描述:

仅包含一个整数,为可以找到最优方案的费用。
示例1

输入

复制
3
0 5 10
5 3 100
9 6 10

输出

复制
32

说明

在工厂1和工厂3建立仓库,建立费用为10+10=20,运输费用为(9-5) \times3=12,总费用32。如果仅在工厂3建立仓库,建立费用为10,运输费用为(9-0) \times5+(9-5) \times3=57,总费用67,不如前者优。

备注:

对于全部数据,,保证所有的X_i,P_i,C_i均在int范围以内,保证中间计算结果不超过long long范围。