聚会

题意:

聚会

分析:

题解

代码:

#include <bits/stdc++.h>
#define pb push_back
using namespace std;
vector<int>pos,neg;
const int inf=0x3f3f3f3f;
typedef long long ll;
int main()
{
    int t,n,a;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d",&n);
        pos.clear();
        neg.clear();
        int ans=0,t1=inf,t2=inf;
        for(int i=1;i<=n;i++)
        {
            scanf("%d",&a);
            if(a>0)
                pos.pb(a);
            else if(a<0)
                neg.pb(-a);
        }
        if(pos.empty()&&neg.empty())
        {
            puts("0");
            continue;
        }
        sort(pos.begin(),pos.end());
        sort(neg.begin(),neg.end());
        if(pos.size())
        {
            int len=pos.size();
            for(int i=0;i<len;i++)
            {
                int x=(i==0?0:pos[i-1]);
                int y=(pos[len-1]-pos[i]+1)/2;
                t1=min(max(x,y),t1);
            }
            if(neg.size())
                t1=max(t1,neg.back());
        }
        if(neg.size())
        {
            int len=neg.size();
            for(int i=0;i<len;i++)
            {
                int x=(i==0?0:neg[i-1]);
                int y=(neg[len-1]-neg[i]+1)/2;
                t2=min(max(x,y),t2);
            }
            if(pos.size())
                t2=max(t2,pos.back());
        }
        ans=min(t1,t2);
        printf("%dn",ans);
    }
    return 0;
}

原文链接: https://www.cnblogs.com/1024-xzx/p/12728974.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    聚会

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/342984

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 上午1:50
下一篇 2023年3月2日 上午1:51

相关推荐