1 条题解

  • 0
    @ 2025-8-24 21:51:12

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar xfydemx
    **

    搬运于2025-08-24 21:51:12,当前版本为作者最后更新于2017-10-03 08:28:36,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    这题思路很清晰,暴力出奇迹

    我就再说一下枚举的细节吧:

    -找出上下界限

    -以界限为界判断高低,若高于则全部削去,低于则削去差大于17的部分

    上代码:

    #include<bits/stdc++.h>
    using namespace  std;
    int a[100000],n,minn,s=1e9+1,sum;
    int main()
    {
        cin>>n;
        for(int i=1;i<=n;i++)
        cin>>a[i];
        sort(a+1,a+n+1);//找出最大和最小情况,这里用sort只是我强行偷懒
        for(int j=a[1];j<=a[n];j++)
        {
            sum=0;
            for(int i=1;i<=n;i++)
            {
                if(a[i]-j>17) sum+=(a[i]-j-17)*(a[i]-j-17);   //若高于则全部削去,低于则削去差大于17的部分
                if(a[i]<j) sum+=(a[i]-j)*(a[i]-j);
            }    
            s=min(sum,s);  //维护结果
        }
        cout<<s;
    }
    
    • 1

    [USACO1.3] 滑雪课程设计Ski Course Design

    信息

    ID
    2702
    时间
    1000ms
    内存
    125MiB
    难度
    2
    标签
    递交数
    0
    已通过
    0
    上传者