一开始看其实题目挺简单的,贪心策略很简单,只需要把得到的数组升序排列,然后分别算出第1项到第n项和,第2项到第n项,......第n-1项到第n项和,全部加起来。为什么呢?因为题目说的是获得最大的分割代价,而分割一次的代价是(剩余)原序列的和,那我们只需要让比较大的数多做贡献,就可以了,也就是说完成输入后,从小到大分割即可。 #include <iostream> #include <cstdio> #include <algorithm> using namespace std; int a[100010]={0}; int main(){ int...