zoukankan      html  css  js  c++  java
  • Link with Grenade 题解(物理题+球冠表面积公式)

    题目链接

    题目思路

    看到题完全不会啊。。。

    为啥群友的数学物理基础如此扎实

    放下官方题解

    随机从某球面上取点进行随机和使用角度进行两次积分实质上是一样的,因为这两种方法单位球面的面密度相

    同。手雷在水平面上的方向并不会影响到其是否炸到人,因此我们只需要关心竖直面。

    考虑转换参考系,给人和手雷都加上一个反向的重力加速度,则手雷做匀速直线运动,人做匀加速直线运动。

    (t)秒后,人的位置是固定的,而手雷的位置是一个圆,手雷可以炸到人的范围也是一个圆(如左下图)。作出

    如右下图所示的三角形,可以用余弦定理求得手雷可以炸到人的仰角( heta)

    根据球冠表面积公式,可以炸到人的部分的表面积为(2pi(vt)^2(1-cos heta)),球的表面积为(4pi(vt)^2) ,故

    答案为 (1-frac{(1-cos heta)}{2}),将余弦定理得到的 的表达式代入即可(注意特判炸不到和一定会炸到的情况)。

    自己的一些感想

    本来觉得是应该(1-2 heta/360) 但是其实不是,因为这不只是一个平面,而是一个球,所以要使用面积比,球冠表面

    积公式是用二重积分算的但我高数学的是啥啊 仔细去想想感觉这个题目挺有意思的

    代码

    #include<bits/stdc++.h>
    #define fi first
    #define se second
    #define debug cout<<"I AM HERE"<<endl;
    using namespace std;
    typedef long long ll;
    typedef pair<int,int> pii;
    const int maxn=2e6+5,inf=0x3f3f3f3f,mod=1e9+7;
    const double eps=1e-6;
    ll t,v,r;
    ll qpow(ll a,ll b){
        ll ans=1,base=a;
        while(b){
            if(b&1) ans=ans*base%mod;
            base=base*base%mod;
            b=b>>1;
        }
        return ans;
    }
    signed main(){
        int _;scanf("%d",&_);
        while(_--){
            scanf("%lld%lld%lld",&t,&v,&r);
            ll a=5*t*t;
            ll b=v*t;
            ll ans=-1;
            if(a>=b+r||b>=r+a){
                ans=1;
            }else if(r>=a+b){
                ans=0;
            }else{
                ll co=(b*b+a*a-r*r)*qpow((2*a*b),mod-2)%mod;
                ans=((co+1)*qpow(2,mod-2)%mod+mod)%mod;
            }
            printf("%lld
    ",ans);
        }
        return 0;
    }
    
    
    不摆烂了,写题
  • 相关阅读:
    java中Condition类的详细介绍(详解)
    Semaphore原理以及使用总结
    RocketMQ消息存储原理总结(一)
    Es Bucket聚合(桶聚合)总结
    "元素隐式具有 “any” 类型,因为类型“Shared”没有索引签名"问题解决思路
    有关生产环境tomcat java应用报错Caused by: java.lang.OutOfMemoryError: Java heap space的调研
    docker 实践02
    正睿比赛总结day1
    【水】一个神秘玩意:如何分辨出差别很小的颜色?
    AtCoder Regular Contest 125 比赛记录(vp)
  • 原文地址:https://www.cnblogs.com/hunxuewangzi/p/15126125.html
Copyright © 2011-2022 走看看