传送门:AOJ 2308、
题意:平面上有n个障碍物,给出障碍物的左下角和右上角(矩形),现在要从原点以初速度V向任意角度发射一只鸟,射出的鸟将呈抛物线飞出,直到撞到障碍物为止,鸟在飞行的过程中可以下一个蛋,蛋将竖直下落,直到撞到障碍物为止,问能不能击中(X,Y)位置的猪。
思路:大白例题,主要体现的是计算几何解题过程中用到的极限转化思想,我们枚举角度时只需要枚举经过障碍物的左上角或者右上角的曲线就行了,任意解都能通过慢慢减小初射角度转化成这种极限情况的解。
像这样在几何问题中,当可行解可以取一段连续的值时,很多时候只要考虑边界的极限情况就能够顺利解决问题了。
代码:
#include<bits/stdc++.h&g