| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 39824 | stevenyu | 【S】T2 | C++ | 解答错误 | 20 | 26 MS | 1032 KB | 636 | 2026-02-02 19:22:41 |
#include<bits/stdc++.h> using namespace std; #define int long long int n,c[100005],b,x,sum,ans; int check(int mid){ int tp=0; for(int i=1;i<=n;i++){ int t1=c[i]/mid; int t2=c[i]%mid; tp+=c[i]*(c[i]-1)/2; tp-=(t1-1)*(t1-1)*t1/2; tp-=t2*t1; } return tp*b-(mid-1)*x; } signed main(){ cin>>n>>b>>x; int tp=0; for(int i=1;i<=n;i++){ cin>>c[i]; } int l=1,r=200000; while(l<r){ int mid=(l+r)>>1; if(check(mid)<=check(mid+1))l=mid+1; else r=mid; } cout<<check(l)<<endl; return 0; } /* */