poj2231---暴力

#include<stdio.h>

#include<stdlib.h>

#include<math.h>

long long int a[100010];

int cmp(const void *a,const void *b)

{

    return (*(long long *)b-*(long long *)a);

}

int main()

{

    int n,i,j;

    long long int sum=0;

    scanf("%d",&n);

    for(i=0;i<n;i++)

    {

        scanf("%lld",&a[i]);

    }

    qsort(a,n,sizeof(long long ),cmp);

    for(i=0;i<n-1;i++)

    {

        for(j=i+1;j<n;j++)

        {

            sum+=(a[i]-a[j]);

        }

    }

    printf("%lld",sum*2);

    return 0;

}

RE无数次,让我的rank降了不少

总结:一列数采用组合,效率很低,也就是暴力

RE原因是少了个&符,让我整整浪费2个小时

算法分析:在我所找到的组合中,算差值*2

对于一个10亿的数用long long int存

你可能感兴趣的:(poj)