思路
问题在于怎么贪心。
推荐一组样例:
解释一下这组样例。图长这样:
如果先切横的,结果就是 1+2∗4+2∗5+2∗61+2∗4+2∗5+2∗61+2∗4+2∗5+2∗6 === 313131。
如果先切竖的,结果就是 4+5+6+1∗4=194+5+6+1∗4=194+5+6+1∗4=19。
显然先切竖的更优。
由此,可以得出一个结论:先切代价大的。
于是,思路就出来了。先把两个数组从大到小排序,然后两个数组挨个比较,较大的就在答案上加上这个代价(要乘上切了多少刀),再把指针往后挪一位,直到全部算完即可。
细节
这道题细节还是蛮多的。
1.是先取大的,不是先取小的。
2.注意是n−1和m−1,不能算成n和m。
3.最后的答案要开long long。
于是就可以愉快地AC了!
代码: