博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 3044 Dog and dog
阅读量:5162 次
发布时间:2019-06-13

本文共 957 字,大约阅读时间需要 3 分钟。

当初我看到它的公式这么复杂,所以就一下子忽略这题了,想起来还真有点后悔。

好的,我翻译一下这一的意思吧!其实就是告诉你两个人和一条狗各时刻的瞬时速度,让你求出两人相遇的时候狗跑了多长的距离。当然,这里的相遇只需要两人相距10m以内。这个看上去很复杂的积分题如果在你做的时候注意一些细节,那么你就可以瞬间秒杀它了。
 
我的做法是在积分的过程中,把sin(sin
2t)sin(cos
2t)看做一个整体,假设是间接时间x(因为两者是一一对应的)。那么,此时的两个人对其速度和的积分就只是积v=v
1sin(1)/x,最后在两人相遇前,所用的间接时间x=e
(l1-10)/t
同理,对狗的速度的积分将变成v=v
2cos(1)*1.55741/x,最后积得间接时间x内狗跑的距离s=v
2cos(1)*1.55741*ln x。
整理可得,狗在两人相遇前最多能跑的距离为s=v
2cos(
1)*
1.55741*(l
1-
10)/v
1/sin
1。然后就是比较数据给出狗跑的最长距离就可以得出答案了。
 
 
View Code
 1 #include<stdio.h>
 2 #include<math.h>
 3 #include<stdlib.h>
 4 #include<
string.h>
 5 
 6 
int main()
 7 {
 8     
int T;
 9     
double s, l1, l2, v1, v2;
10 
11     scanf(
"
%d
", &T);
12     
while(T--)
13     {
14         scanf(
"
%lf%lf%lf%lf
", &l1, &l2, &v1, &v2);
15         s=cos(
1)*
1.55741*v2*(l1-
10)/v1/sin(
1);
16         
if(s<
0)printf(
"
0\n
");
17         
else 
if(s>l2)printf(
"
%.0lf\n
", l2);
18         
else printf(
"
%.0lf\n
", s);
19     }
20     
return 
0;
21 }
 
written by Lyon

转载于:https://www.cnblogs.com/LyonLys/archive/2012/03/16/hdu_3044_Lyon.html

你可能感兴趣的文章
C语言基础小结(一)
查看>>
STL中的优先级队列priority_queue
查看>>
UE4 使用UGM制作血条
查看>>
浏览器对属性兼容性支持力度查询网址
查看>>
OO学习总结与体会
查看>>
虚拟机长时间不关造成的问题
查看>>
面试整理:Python基础
查看>>
Python核心编程——多线程threading和队列
查看>>
Program exited with code **** 相关解释
查看>>
植物大战僵尸中文年度版
查看>>
26、linux 几个C函数,nanosleep,lstat,unlink
查看>>
投标项目的脚本练习2
查看>>
201521123107 《Java程序设计》第9周学习总结
查看>>
Caroline--chochukmo
查看>>
iOS之文本属性Attributes的使用
查看>>
从.Net版本演变看String和StringBuilder性能之争
查看>>
Excel操作 Microsoft.Office.Interop.Excel.dll的使用
查看>>
解决Ubuntu下博通网卡驱动问题
查看>>
【bzoj2788】Festival
查看>>
执行gem install dryrun错误
查看>>