• 团体程序设计天梯赛 L3-013 非常弹的球 (30分)


    题目链接:

    L3-013 非常弹的球 (30分)

    思路:

    我们由动能公式可以求得速度v=2Emv=sqrt{frac{2E}{m}}
    设ang为θ heta,则水平速度为vx=cosθ2Emv_{x}=cos hetasqrt{frac{2E}{m}},竖直速度为vy=sinθ2Emv_{y}=sin hetasqrt{frac{2E}{m}}
    由于空气阻力等忽略不计,小球达到最高点所需时间t=vygt=frac{v_{y}}{g},根据物理常识我们可知到达地面和升到最高点时间一致,因此从抛出到落地总时间为2t2t,小球水平移动的总距离s=2tvx=4Esinθcosθmg2Emgs=2tv_{x}=frac{4Esin hetacos heta}{mg}leqfrac{2E}{mg},当θ hetaπ4frac{pi}{4}时取最大值;
    似乎从地上再次弹起来的角度还是刚开始抛出的角度?不知道,物理都忘光了
    然后依次开始下一个循环直到答案满足精度需求;

    代码:

    #include<bits/stdc++.h>
    
    using namespace std;
    
    const double eps = 1e-9;
    const double g = 9.8;
    
    int main() {
    #ifdef MyTest
    	freopen("Sakura.txt", "r", stdin);
    #endif
    	double w, p, ans = 0;
    	scanf("%lf %lf", &w, &p);
    	for(double e = 1000; e > eps; e *= 1 - p / 100) {
    		ans += 200 * e / w / g;	
    	}
    	printf("%.3f", ans);
    	return 0;
    }
    
  • 相关阅读:
    真正的e时代
    在线手册
    UVA 10616 Divisible Group Sums
    UVA 10721 Bar Codes
    UVA 10205 Stack 'em Up
    UVA 10247 Complete Tree Labeling
    UVA 10081 Tight Words
    UVA 11125 Arrange Some Marbles
    UVA 10128 Queue
    UVA 10912 Simple Minded Hashing
  • 原文地址:https://www.cnblogs.com/yuhan-blog/p/12308615.html
Copyright © 2020-2023  润新知