小白求大佬分享一下贪心练习题中,牛牛的朋友这道题的题解。

小白求大佬分享一下贪心练习题中,牛牛的朋友这道题的题解。
原题:链接:https://ac.nowcoder.com/acm/problem/21545 #include<cstdio>
#include<algorithm>
using namespace std;
int main()
{
    long long array[55],a[55];
    long long n,x,s;
    long long i,j;
    while(~scanf("%lld",&n))
    {
        s=0;
        long long Mi,Ma;    //Mi记录最小数据,Ma记录最大数据
        for(i=0;i<=n-1;i++)
        {
            scanf("%lld",&array[i]);
            if(i==0)
            {
                Mi=array[0];
                Ma=array[0];
            }
            else if(Mi>array[i])
            {
                Mi=array[i];
            }
            else if(Ma<array[i])
            {
                Ma=array[i];
            }
         } //printf("%lld %lld min max\n",Mi,Ma); 
        scanf("%lld",&x);
        if(Mi==Ma)
            printf("0\n");
        else
        {
            sort(array,array+n);
            a[0]=array[0]+x;
            if(a[0]>=array[1])
                a[1]=array[1]+x;
            else a[1]=array[1]-x;
            for(i=2;i<=n-1;i++)
            {
                if(a[i-1]>array[i])
                {
                    a[i]=array[i]+x;
                }
                else a[i]=array[i]-x;
            }
            sort(a,a+n);
            printf("%lld\n",a[n-1]-a[0]);
        }
    }
    return 0;
 } 
这是我自己的代码,样例通过率是76%,不知怎么修改。
谢谢!!!

#题解#
全部评论
题干都没有哦 不想看呢😌
点赞 回复
分享
发布于 2019-01-26 02:30

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务