H题数据有没有卡常?

为什么H时间复杂度为4e8会超时?

#include<bits/stdc++.h>
// #define int long long
#define ld double
// #define endl '\n'
using namespace std;
inline int read() {
    int x = 0, f = 1; char c = getchar();
    while (c < '0' || c > '9') { if (c == '-') f = -1; c = getchar(); }
    while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();
    return x * f;
}
void solve()
{
    ld a=read(),b=read(),c=read(),d=read();
    // cin>>a>>b>>c>>d;
    ld x1=a,y1=c;
    ld x2=b,y2=d;
    int i;
    ld maxn1=-1e9,x3=-1e9,y3=-1e9;
    for(i=a+1;i<b;i++)//枚举x
    {
        // cout<<i<<" ";
        ld midx=(i+a)/2,midy=(c+d)/2;
        assert(a!=i);
        ld k=(d-c)/(i-a);

        ld k1=1/k;
        ld xo=(i+b)/2;
        ld yo=xo*k1+midy-midx*k1;
        ld R2=(xo-a)*(xo-a)+(yo-c)*(yo-c);
        // cout<<R2<<" ";
        if(R2>maxn1)
        {
            maxn1=R2;
            y3=d;
            x3=i;
            // cout<<"jhffbjhvbgfgbfv";
        }
    }
    // cout<<x3<<" "<<y3<<endl;
    ld maxn2=-1e9,x4=-1e9,y4=-1e9;
    for(i=c+1;i<d;i++)
    {
        ld midx=(a+b)/2,midy=(i+d)/2;
        ld k=(d-i)/(b-a);
        ld k1=1/k;
        ld yo=(i+c)/2;
        ld xo=(yo-midy+midx*k1)/k1;
        ld R2=(xo-a)*(xo-a)+(yo-c)*(yo-c);
        if(R2>maxn2)
        {
            maxn2=R2;
            x4=a;
            y4=i;
        }
    }

    // cout<<a<<" "<<c<<endl;
    printf("%.0lf %.0lf\n",a,c);

    // cout<<b<<" "<<d<<endl;
    printf("%.0lf %.0lf\n",b,d);
    ld R=sqrt((d-c)*(d-c)+(b-a)*(b-a));
    R=R/2;
    R=R*R;
    if(R>=maxn1&&R>=maxn2)
    {
        printf("%.0lf %.0lf\n",a,d);
        return;
    }
    if(maxn1>maxn2)
    {
        // cout<<"jmhbvjbhvfjhbr";
        printf("%.0lf %.0lf\n",x3,y3);
    }
    else
    printf("%.0lf %.0lf\n",x4,y4);
}
signed main()
{
    // std::ios::sync_with_stdio(false);
    // cin.tie(nullptr);
    // cout.tie(nullptr);
    int t=read();
    // cin>>t;
    while(t--)
    {
        solve();
        // cout<<endl;
    }
    return 0;
}

全部评论
无,每次回答是 O(1)
点赞 回复 分享
发布于 01-23 18:45 福建
蹲(4e8,TLE+1)
点赞 回复 分享
发布于 01-23 19:36 湖北

相关推荐

计网1.&nbsp;完整网络请求的过程2.&nbsp;SSL握手的详细过程是什么样的3.&nbsp;请求的方法有哪些4.&nbsp;get和post的区别5.&nbsp;post请求的数据放在哪里6.&nbsp;header通常有哪些内容7.&nbsp;响应状态码有哪些8.&nbsp;平时使用互联网遇到过哪些状态码设计模式1.&nbsp;熟悉哪些设计模式2.&nbsp;建造者模式什么时候用3.&nbsp;责任链模式的场景4.&nbsp;Android哪些地方用到这里(OKHttp拦截器链,七大拦截器)Java1.&nbsp;==和equals的区别2.&nbsp;Object的equals是怎么判断相同的(判断地址)面试官发出疑问,确定吗?嗯?(&nbsp;我沉默了,内心:难道不是吗??。。)3.&nbsp;过,继续下一问:内部类怎么访问外部类(隐式持有)4.&nbsp;具体怎么持有,怎么区分Android1.&nbsp;视图的绘制流程2.&nbsp;视图是如何确定大小的3.&nbsp;onMeasure最终调用什么确定大小4.&nbsp;Looper作用是什么5.&nbsp;Looper跟线程是什么关系6.&nbsp;Android主线程是什么时候创建的7.&nbsp;前后台切换会回调什么函数8.&nbsp;什么情况只回调一个算法1.&nbsp;写个完美一点的单例(DCL)volatile去掉有什么问题,第一个判空去掉呢,第二个呢锁对象可以换成其他吗2.&nbsp;写一个生成者消费者模式(写不出来,只是了解过)3.&nbsp;岛屿最大面积优化一下返回值,不用使用全局或者静态变量时间复杂度和空间复杂度分别是多少其他1.&nbsp;数据库学过吗(课程还没上)2.&nbsp;你现在大几,后面有这个课吗3.&nbsp;出来实习的目的或目标是什么4.&nbsp;实习时间大概能多久5.&nbsp;一周能来几天后续周五面完下周一wxg发offer了,催三面回复说面试官这两天给反馈,过了三天感谢信了#牛客创作赏金赛##字节跳动##面经##牛客激励计划##实习##日常实习##牛客AI配图神器#
查看36道真题和解析 牛客创作赏金赛 牛客激励计划
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务