站外题求助
  • 板块灌水区
  • 楼主Future_Present
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/12/24 09:51
  • 上次更新2023/12/24 11:42:55
查看原帖
站外题求助
1099087
Future_Present楼主2023/12/24 09:51

描述 小美有一个长度为n 的数组,她想将这个数组进行求和,即 sum=a1+a2 +...+an 。 小美可以使用一次魔法(也可以不使用),将其中一个加号变成乘号,使得sum 最大。求出最大的sum 。

输入 第一行输入一个整数 n 。 第二行输入 n 个整数表示数组 a 。

输出 输出一个整数表示答案。

样例 输入

6

1 1 4 5 1 4

输出

27

提示 例子说明: 小美可以将 4 和 5 之间的加号改成乘号。 1 + 1 + 4 * 5 + 1 + 4 = 27

我的代码:

#include<bits/stdc++.h>
using namespace std;
const long long maxn=1e7+1;
long long a[maxn],n,sum=0;
int main(){
    cin>>n;
    for(long long i=1;i<=n;i++){
    	cin>>a[i];
	}
	sort(a+1,a+n+1);
	for(long long i=1;i<=n-2;i++){
		sum+=a[i];
	}
	cout<<sum+a[n]*a[n-1];
	return 0;
}

20pts

2023/12/24 09:51
加载中...