1 条题解

  • 0
    @ 2025-8-24 22:58:48

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar zhengpie
    天降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行指乱其所为,所以动心忍性,曾益其所不能。

    搬运于2025-08-24 22:58:48,当前版本为作者最后更新于2024-05-20 08:02:45,作者可能在搬运后再次修改,您可在原文处查看最新版

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

    以下是正文


    1.思路

    首先,我们考虑 $\alpha = (t \times v - \lfloor t \times v \rfloor) \times 2 \times \pi$,即衣服转的角度化成弧度制。

    再考虑 dis=x2+y2dis = \sqrt{x^2+y^2},即圆的半径。

    那么我们要求的就是以 disdis 为腰,以 α\alpha 为顶角的等腰三角形的底边 ansans

    根据余弦定理,我们有 $ans = \sqrt{dis ^ 2 + dis^2 - 2 \times dis \times dis \times \cos{\alpha}}$。

    又因为 STL 里的 cos 里面的角要填弧度制,所以上文中我们把 α\alpha 换算成弧度制。

    2.代码

    #include<bits/stdc++.h>
    using namespace std;
    double x,y,t;
    double v;
    signed main()
    {
        ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
        cin>>x>>y>>t>>v;
        double angle = (t * v - (double)(floor(t * v))) * 2 * 3.1415926535897,dis = sqrt(x * x + y * y);
    	cout<<setprecision(10)<<fixed<<sqrt(dis * dis + dis * dis - 2 * dis * dis * cos(angle)); 
    
        
        return 0;
    }
    
    • 1

    信息

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