Simon最近迷上了一款RPG游戏,现在他要从坐标(0,0)沿着y轴跑到坐标(0,100),他每秒能跑1个单位长度。
可是沿途的怪物可不会让他这么容易的就跑到,怪物会选择最优路径进行拦截,而且每个怪物跑的都比Simon快。
当怪物和Simon在同一坐标的时候,就会爆发战斗。但是Simon强,无敌,战斗一开始就可以把怪物秒了(也就是说,战斗是不消耗时间的)。
现在Simon想知道跑到目的地前他要和几只怪物战斗。(在目的地爆发的战斗也要计算在内)
题目包含多组测试数据,每组测试数据第一行包含一个正整数n,表示怪物个数。
接下来n行,每行三个整数x,y,v,表示怪物当前的坐标和移动速度(单位长度/秒)。
n≤10^5,-1000<=x<=1000,-1000<=y<=1000,1<=v<=1000
输出一个整数,表示战斗场数
3 0 0 5 0 200 1 0 201 1Sample Output
2
所有怪物均跑到终点(0,100)
考点:思维题
#include<cstdio>
#include<math.h>
int main()
{
int n;
while(~scanf("%d",&n)){
double x,y,t;
int cnt=0;
for(int i=0;i<n;i++){
scanf("%lf%lf%lf",&x,&y,&t);
if(sqrt(x*x+(y-100)*(y-100))*1.0/t<=100) cnt++;
}
printf("%d\n",cnt);
}
}