http://acm.csu.edu.cn/csuoj/problemset/problem?pid=2148
题意 正N边形每个顶点有一个分身以固定的速率向其中一侧的点靠近,中心的人可移动也可以不动,问最坏情况下分身什么时候遇到中心的人 分析 最坏情况下中心的人显然是在原地等皮神的 点在移动的过程中始终保持着原来的形状,即正 N 边形。因为它们 都是以顺时针的点作为基准,而且移动速度完全一样,所以整个图形是个类似 中心对称的形状。 这样显然所有点同时到达中心,而且到达中心的时间就是所有点相遇的时间。
我们分析其中相邻的两个点。将 A 与 B 的移动方向关于 AB 线段正交分 解,AB 相互靠近的速度可以分为两个部分,一部分为 A 靠近的速度,即为 A 原 本的速度,另一部分为 B 远离的速度,即 B*cos(a)的速度(a 指 A 与 B 速度的 夹角)。而 B 分解出来的另一个关于线段 AB 垂直的速度,对于我们要考虑的问 题没有影响,仅仅影响了偏转角度,所以没有分析价值,直接忽略。 由于题目 已给出边数,速度间的夹角可以求出。问题就转化成了一个简单的直线上的追及问题
#include<cstdio>
#include<cmath>
#include<assert.h>
using namespace std;
const double eps=1e-8,PI=acos(-1.0);
double n,a,v;
int main()
{
while(~scanf("%lf%lf%lf",&n,&a,&v))
{
double zeta=2*PI/n;///正n边形的外角和为360
double t=a/(v-v*cos(zeta));
printf("%.5f\n",t);
}
return 0;
}