NC21841 牛牛玩平板
链接:https://ac.nowcoder.com/acm/contest/44077/1032
来源:牛客网
题目描述
牛牛和牛妹喜欢玩平板游戏,游戏一开始屏幕上会出现很多个图形,玩家在每一轮可以合并两个图形,当只有一个图形的时候游戏结束,每个图形都有一个大小,合并完成后的图形的大小为x+y,x和y分别为合并之前的两个图形,与此同时,玩家会获得x*y的分数。
牛牛和牛妹新开了一盘游戏,屏幕上出现了n个图形,每个图形的大小已知,请算出牛牛和牛妹最大能获得的分数
输入描述:
第一行输入一个整数n (2 \le n \le 1002≤n≤100)
第二行输入n个整数范围在1到100之间
输出描述:
输出一个整数
示例1
输入
3
1 2 3
输出
11
示例2
输入
2
3 4
输出
12
示例3
输入
3
2 2 2
输出
12
备注:
子任务1:n <= 10
子任务2:n <= 20
子任务3:无限制
#include<iostream>
using namespace std;
int main(){
int n;
int N[10010]; //数组要开大一点
int sum=0;
cin>>n;
for(int i=0;i<n;i++)
cin>>N[i];
for(int i=1;i<=n;i++){ //思路不清晰的地方可以试着在草稿上推导
sum+=N[i]*N[i-1];
N[i]+=N[i-1];
}
cout<<sum<<endl;
return 0;
}
本文来自博客园,作者:Nikkie-02,转载请注明原文链接:https://www.cnblogs.com/Nikkie-02/p/16807843.html

浙公网安备 33010602011771号