Problem D. Delay Time Input file: standard input Output file: standard output Time limit: 1 second Memory limit: 512 megabytes Petr and Egor are measuring the gravitational acceleration g on their physics lessons using a special device. An electromagnetic trap holding a metal ball is installed on an arbitrary positive height chosen by the user. As soon as the button is pressed, the timer starts, the electromagnet turns off and the released ball falls on a table. The timer stops immediately when the ball touches the table. h Petr has set the height to h1 meters and got t1 seconds on the timer as a result of the experiment. In his turn Egor changed the height to h2 meters and got t2 seconds shown on the timer. While calculating the value of g they surprisingly got significantly different results, and asked a teacher to clarify the nature of this inconsistency. As it often happens with this sort of “mystery”, the solution was simple: there was a constant delay of d seconds between the start of the timer and the moment the ball actually starts to fall, caused by the time needed for the electromagnet to lose its grip on the ball. They quickly managed to determine this value from the given information and calculate the correct g. Can you manage to do this in five hours? Assume that the gravitational acceleration and the delay time are the same in both experiments. Air friction and other effects are considered negligible for the purpose of this experiment. When the ball with zero initial speed starts to fall affected only by the gravitational acceleration g, the distance it travels in t seconds is given by a well-known formula: ρ(t) = g · t 2 2 Input The first line of the input contains real values h1 and t1 — the height selected by Petr, in meters, and the time value he has measured, in seconds (0 < h1, t1 ≤ 10). The second line contains real values h2 and t2 — the values of height in meters and time in seconds for Egor’s experiment (0 < h2, t2 ≤ 10, h1 ̸= h2). All values in the input are given with no more than three digits after the decimal point. Page 5 of 17 ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 It is guaranteed that input data is consistent, that means that positive real g and d were used to generate the input. Output Output the value of electromagnet delay d in seconds. Your answer will be considered correct if its absolute or relative error doesn’t exceed 10−4 . Formally, if your answer is a and the jury’s answer is b, the checker will accept your answer if |a−b| max(1,b) ≤ 10−4 . Examples standard input standard output 1.495 2.009 7.674 2.708 1.456709 5 1.25 1.25 0.75 0.250000 Note In the first sample the gravitational acceleration g is approximately equal to 9.80246, while in the second sample it is 10. Note that g in the testset can vary arbitrarily and is not guaranteed to be related to the gravitational acceleration on the surface of any known planet.

题意:给出球的两次坠落高度,开始下落时间和球坠地的时间分别是H1,T1,H2,T2,但是测量有误差,求误差大小。

分析:暴力枚举误差。

 /**
Create By yzx - stupidboy
*/
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <deque>
#include <vector>
#include <queue>
#include <iostream>
#include <algorithm>
#include <map>
#include <set>
#include <ctime>
#include <iomanip>
using namespace std;
typedef long long LL;
typedef double DB;
#define MIT (2147483647)
#define INF (1000000001)
#define MLL (1000000000000000001LL)
#define sz(x) ((int) (x).size())
#define clr(x, y) memset(x, y, sizeof(x))
#define puf push_front
#define pub push_back
#define pof pop_front
#define pob pop_back
#define ft first
#define sd second
#define mk make_pair inline int Getint()
{
int Ret = ;
char Ch = ' ';
bool Flag = ;
while(!(Ch >= '' && Ch <= ''))
{
if(Ch == '-') Flag ^= ;
Ch = getchar();
}
while(Ch >= '' && Ch <= '')
{
Ret = Ret * + Ch - '';
Ch = getchar();
}
return Flag ? -Ret : Ret;
} const DB EPS = 1e-;
DB h1, h2, t1, t2; inline void Input()
{
cin >> h1 >> t1 >> h2 >> t2;
} inline DB Sqr(DB x)
{
return x * x;
} inline DB Work(DB x)
{
DB g1 = 2.0 * h1 / Sqr(t1 - x);
DB g2 = 2.0 * h2 / Sqr(t2 - x);
return abs(g1 - g2);
} inline void Solve()
{
DB ret = 0.0, cnt = 1.0 * INF;
for(DB delay = 0.0; delay <= min(t1, t2) - EPS; delay += EPS)
{
DB delta = Work(delay);
if(cnt > delta)
cnt = delta, ret = delay;
}
printf("%.6lf\n", ret);
} int main()
{
//freopen("D.in", "r", stdin);
Input();
Solve();
return ;
}

ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 D. Delay Time的更多相关文章

  1. ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 G. Garden Gathering

    Problem G. Garden Gathering Input file: standard input Output file: standard output Time limit: 3 se ...

  2. ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 I. Illegal or Not?

    I. Illegal or Not? time limit per test 1 second memory limit per test 512 megabytes input standard i ...

  3. ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 K. King’s Rout

    K. King's Rout time limit per test 4 seconds memory limit per test 512 megabytes input standard inpu ...

  4. ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 H. Hashing

    H. Hashing time limit per test 1 second memory limit per test 512 megabytes input standard input out ...

  5. ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 C. Colder-Hotter

    C. Colder-Hotter time limit per test 1 second memory limit per test 512 megabytes input standard inp ...

  6. ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 A. Anagrams

    A. Anagrams time limit per test 1 second memory limit per test 512 megabytes input standard input ou ...

  7. hdu 5444 Elven Postman(二叉树)——2015 ACM/ICPC Asia Regional Changchun Online

    Problem Description Elves are very peculiar creatures. As we all know, they can live for a very long ...

  8. 2015 ACM / ICPC 亚洲区域赛总结(长春站&北京站)

    队名:Unlimited Code Works(无尽编码)  队员:Wu.Wang.Zhou 先说一下队伍:Wu是大三学长:Wang高中noip省一:我最渣,去年来大学开始学的a+b,参加今年区域赛之 ...

  9. Moscow Subregional 2013. 部分题题解 (6/12)

    Moscow Subregional 2013. 比赛连接 http://opentrains.snarknews.info/~ejudge/team.cgi?contest_id=006570 总叙 ...

随机推荐

  1. 数对的个数(cogs610)

    Description出题是一件痛苦的事情!题目看多了也有审美疲劳,于是我舍弃了大家所熟悉的A+B Problem,改用A-B了哈哈! 好吧,题目是这样的:给出一串数以及一个数字C,要求计算出所有A- ...

  2. UVa1592_数据库

    #include<iostream> #include<cstdio> #include<vector> #include<utility> #incl ...

  3. Codeforces Round #344 (Div. 2)(按位或运算)

    Blake is a CEO of a large company called "Blake Technologies". He loves his company very m ...

  4. 无废话Android之smartimageview使用、android多线程下载、显式意图激活另外一个activity,检查网络是否可用定位到网络的位置、隐式意图激活另外一个activity、隐式意图的配置,自定义隐式意图、在不同activity之间数据传递(5)

    1.smartimageview使用 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&q ...

  5. Pyqt QSystemTrayIcon 实现托盘效果

    pyqt的托盘效果很好实现,在Pyqt的demo中有个例子 路径:PyQt4\examples\desktop\systray.py 今天我就仿这个Tray效果做效果 一. 创建UI trayicon ...

  6. 【翻译十三】java-并发之饥饿与活锁

    Starvation and Livelock Starvation and livelock are much less common a problem than deadlock, but ar ...

  7. EasyUI - DataGrid 去右边空白滚动条列 分类: JavaScript 2014-09-03 10:46 1090人阅读 评论(2) 收藏

    熟悉 EasyUI - DataGrid 的童鞋应该会注意到这样一个情景: 想去掉这块,找了下资料,发现也有人同样纠结:http://www.cnblogs.com/hantianwei/p/3440 ...

  8. Effective C++ 之 Item 3:尽可能使用 const

    Effective C++ Chapter 1. 让自己习惯C++(Accustoming Yourself to C++) Item 3. 尽可能使用 const (Use const whenev ...

  9. Ubuntu 安装OpenCV3.0.0

    Ubuntu安装OpenCV3.0.0 为了看看opencv3.0的HDR效果,尝试安装opencv3.0到ubuntu12.04上面,安装了好几次终于成功了. 参考博客: http://www.sa ...

  10. ios 音乐播放

    #import "ViewController.h" #import <AVFoundation/AVFoundation.h> @interface ViewCont ...