题意
给定$\{a_n\}$,$\{b_n\}$
求$\sum_{i=1}^k|a_ix+b_i|$ 的最小值$(\forall k\in[1,n])$
首先根据小学数学知识,我们把它转化为:
考虑实际意义,一条数轴上有$m$个点,要求数轴上一点,使该点到各点的距离和最小显然, 当这个点为第$\frac{m+1}2$个点时为一个最优解(即中位数)
然后用平衡树维护中位数,并统计答案即可(当然你用两个堆也可以)
注意总个数可能爆$int$
Talk is cheap, show me the code.
码风很丑,大佬轻喷
1 |
|