這道題如果用暴力搜索做就太沒有水平了,並且可能超時。
解答此題後的心得是:如果預感數據很大,就__int64,爲此我貢獻了一個WA
/*
* tyvj-1021
* mike-w
* 2012-9-27
*/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAXN 12345
__int64 f[MAXN];
__int64 g[MAXN];
int N;
int comp(const void *e1, const void *e2)
{
return (int)(*((__int64*)e1) - *((__int64*)e2));
}
int main(void)
{
int i;
unsigned __int64 sum=0;
scanf("%d", &N);
for(i=0; i<N; i++)
scanf("%I64d", f+i);
qsort(f, N, sizeof(__int64), comp);
for(i=1; i<N; i++)
g[i]=g[i-1]+i*(f[i]-f[i-1]);
for(i=1; i<N; i++)
sum+=g[i];
printf("%I64d\n", sum*2);
return 0;
}