[勇闯黄金十二宫] 处女宫
2017-01-22 08:23
183 查看
题目描述
【题目背景】话说星矢、紫龙、冰河、阿瞬为了救活雅典娜,必须勇闯黄金十二宫。
【问题描述】
第六个他们来到处女宫,身为处女座黄金圣斗士的沙加被称为最接近神的人,也就是说,他是最厉害的黄金圣斗士。不过他并不知道教皇是假的,星矢等人和他展开了决斗。沙加的眼睛一直是闭着的,而且很轻松就打败了他们四人。不过后来,阿瞬的哥哥一辉赶到救了他们,并且和沙加单挑。一辉很厉害,迫使沙加张开了眼睛,并且使出了绝招“天舞宝轮”,这一绝招十分强悍,可以封人的六感。一辉为了不被沙加击中,便往相反方向逃跑。 由于体力问题,一辉的速度为v1=at(a是自变量,t是时间),和沙加发“天舞宝轮”的速度v2=t^2,但是,由于一辉有预知,所以k秒前就已经开始逃跑。显然这两个运动是变速运动,每个运动的t均以运动开始作为0秒(所以两个t的意义不同)。“天舞宝轮”虽然强,但有时间限制,即一定时间后就消失,所以你就得计算一下理论上“天舞宝轮”追上一辉要多少秒(这里以一辉开始逃跑为0时间计时,假设均为直线运动) 后来,一辉虽然被封了六感,但他发挥了第七感的小宇宙。和沙加同归于今了。(后来两人又在白羊座穆先生的帮助下复活了。)
输入格式
本题包含多组数据. 每组数据一行,为实数a和k, a,k都大于零。输出格式
对于每组数据输出一行,为“天舞宝轮”追上一辉要多少秒,即求追上时的t,保留4位小数。(保证有解,且结果小于1e+10)样例数据
样例输入
1 1样例输出
3.7756题目分析
积分练习题目对v1积分得1/2*a*t^2,对v2积分得(t-k)^3/3。
令f(x)=(∫v1-v2)|t=x=1/2*a*x*x-(x-k)^3/3
对f(x)取导2*(t-k)^3-3at-6akt-3ak^2
观察发现单调,二分取答案
精度要求较高,用long double
源代码
#include<algorithm> #include<iostream> #include<iomanip> #include<cstring> #include<cstdlib> #include<vector> #include<cstdio> #include<cmath> #include<queue> using namespace std; inline const int Get_Int() { int num=0,bj=1; char x=getchar(); while(x<'0'||x>'9') { if(x=='-')bj=-1; x=getchar(); } while(x>='0'&&x<='9') { num=num*10+x-'0'; x=getchar(); } return num*bj; } long double f(long double t,long double a,long double k) { t-=k; return 2*t*t*t-3*a*t*t-6*a*k*t-3*a*k*k; } long double a,k; int main() { ios::sync_with_stdio(false); while(cin>>a>>k) { long double Left=0,Right=1e07; while(Right-Left>1e-10) { long double mid=(Left+Right)/2; if(f(mid,a,k)*f(Left,a,k)<0)Right=mid; else Left=mid; } cout<<fixed<<setprecision(4)<<Left<<endl; } return 0; }
相关文章推荐
- 什么是物理隔离
- WHOIS类的修改版
- cpu逻辑,物理个数查看
- SQL Server 2008 事务日志截断(truncate)与收缩(shrink)
- arp简介
- [bzoj1911]特别行动队
- [HEOI2012] 采花题解报告
- Begins and tests
- USACO2013 Nov. Gold T3,一道集合DP
- 数学-素数筛及其拓展
- 最大流模板
- 计算几何模板
- 各种树模板(splay,线段树,可持久化线段树...)
- 上下界网络流初探
- 二分图匹配模板
- 一个与小球碰撞有关的有趣问题
- No.1 第一次,OI感受
- CCC 2015 总结&回顾
- 树状数组 Binary Indexed Tree
- 快速读入