60pts
查看原帖
60pts
479716
nick_zha楼主2021/7/12 10:47
#include<cstdio>
#include<algorithm>
using namespace std;
unsigned long long N,ans=0,a[1000005];
bool cmp(unsigned long long a,unsigned long long b)
{
    return a>b;
}
int main()
{
    scanf("%lld",&N);
    for(unsigned long long i=0;i<N;i++)
    {
        scanf("%lld",&a[i]);
    }
    make_heap(a,a+N,cmp);
    for(unsigned long long i=N;i>1;i--)
    {
        pop_heap(a,a+i,cmp);
        pop_heap(a,a+i-1,cmp);
        a[i-2]+=a[i-1];
        ans+=a[i-2];
        push_heap(a,a+i-1,cmp);
    }
    printf("%lld",ans);
    return 0;
}

Subtask 4全WA

2021/7/12 10:47
加载中...