题目链接: 就是一个老鼠在环上一速度v开始绕环走,一只猫从圆心出发,任意时刻圆心,猫,老鼠三者在一条直线上,且速度也是v,求多久后猫抓到老鼠。
#include <cstdio> #include <iostream> #include <algorithm> #include <cstring> #include <iostream> #include <cmath> #include <vector> #define MM(a,b) memset(a,b,sizeof(a)); using namespace std; typedef long long ll; #define CT continue #define SC scanf const int N=1e2+10; const double pi=acos(-1); int main() { int r,v,cas,kk=0; SC("%d",&cas); while(cas--) { SC("%d%d",&r,&v); printf("Case %d: %.8f ",++kk,(pi*r)/(2*v)); } return 0; }
参考下题解:需要根据在任意时刻猫的位置在圆心和老鼠之间和图推断出三者共线。。然后进一步假设并证明出猫的轨迹是以r/2为圆心的半圆。。