对于n个图形来说,不管按怎样顺序组合,最后得到的分数都是一样的。
假设有n个图形,大小分别为 。按照从左到右的合并方式进行处理可以得到。
可以看出来,最后得到分数是任意两个图形大小乘积的和,所以不管按照怎样顺序对图形进行合并得分结果都是相同的。因此,我们只要简单得按照题目进行计算即可。
#include <iostream>
using namespace std;
int main()
{
int n, a1,a2,score=0;
cin>>n;
cin>>a1;
for(int i=1; i<n; ++i)
{
cin>>a2;
score=score+a1*a2;
a1=a1+a2;
}
cout<<score<<endl;
}


京公网安备 11010502036488号