社区讨论

只对了1/10

P1090[NOIP 2004 提高组] 合并果子参与者 3已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@mi6h3va2
此快照首次捕获于
2025/11/20 04:47
4 个月前
此快照最后确认于
2025/11/20 04:47
4 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
int a[10001];
int i,n,j,m,k,l,x;
long long ans;
bool cmp(int a,int b){
    return a>b;
}    
int main(){
    cin>>n;
    for (i=1;i<=n;i++)cin>>a[i];
    sort(a+1,a+1+n,cmp);
    i=n-1;
    while (i!=0){
        a[i]=a[i]+a[i+1];
        x=a[i];
        for (j=i;j>=1;j--) if (x>a[i-1]) a[i]=a[i-1];else break;
        a[j]=x;
        ans+=x;
        i--;
    }    
    cout<<ans;
    return 0;
}
why does it wrong???

回复

4 条回复,欢迎继续交流。

正在加载回复...