您的位置:首页 > 其它

杭电2803The MAX

2015-11-01 16:40 246 查看


The MAX

Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)

Total Submission(s): 2054    Accepted Submission(s): 890


Problem Description

Giving N integers, V1, V2,,,,Vn, you should find the biggest value of F.



 

Input

Each test case contains a single integer N (1<=N<=100). The next line contains N integers, meaning the value of V1, V2....Vn.(1<= Vi <=10^8).The input is terminated by a set starting with N = 0. This set should not be processed.

 

Output

For each test case, output the biggest value of F you can find on a line.

 

Sample Input

2
1 2
0

 

Sample Output

4017

 

Source

HDU 2009-4 Programming Contest

 

Recommend

lcy   |   We have carefully selected several similar problems for you:  2807 2804 2800 2816 2806 

 

把最大的乘以最大的,其余的都按照1 算就得到最大的了。

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
__int64 a[1100],i,j,k,l,m,n,ans,num;
int main()
{
while(scanf("%I64d",&n),n)
{
ans=0;
for(i=0;i<n;i++)
{
scanf("%I64d",&a[i]);
ans+=a[i];
}
sort(a,a+n);
ans-=a[n-1];
num=a[n-1]*(2010-n)+ans;//最大的放一个,其余的都化为1
printf("%I64d\n",num);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  杭电 数学 技巧