1 条题解
-
0
C++ :
#include <cstdio> int main(){ int n; if(scanf("%d",&n)!=1) return 0; int h[1005]; for(int i=0;i<n;i++)scanf("%d",&h[i]); long long best=-1; // 枚举最终高度下界 L,所有山调到 [L, L+17] for(int L=-20;L<=100;L++){ long long c=0; for(int i=0;i<n;i++){ if(h[i]<L)c+=(long long)(L-h[i])*(L-h[i]); else if(h[i]>L+17)c+=(long long)(h[i]-L-17)*(h[i]-L-17); } if(best<0||c<best)best=c; } printf("%lld\n", best); return 0; }
- 1
信息
- ID
- 2782
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者