题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1593
思路:最开始直接往相反的方向跑,果断wa。。最理想的逃跑初始点并不是圆心,而是内层某一个同心圆,使得内圈角速度等于外圈角速度。在内圆内部,B的角速度都会比A的角速度大,因此无论A如何移动,B都可以利用角速度的优势使得A,B,O同线并且向外挪到这个最理想状态。之后只要比较从理想状态沿直线与沿半圆走的时间就可以了
利用v=rω
1 #include <cstdio> 2 #include <cmath> 3 const double pi=4.0*atan(1.0); 4 int main() 5 { 6 int R,v1,v2; 7 while(~scanf("%d%d%d",&R,&v1,&v2)) 8 { 9 double r=(double)R*v1/v2; 10 double t1=(double)(R-r)/v1; 11 double t2=(double)(pi*R)/v2; 12 if(t1<t2) 13 printf("Yes "); 14 else 15 printf("No "); 16 } 17 return 0; 18 }