选择“直瞄单位”这个问题肯定可以用弹幕法,不管是从施法者向四周发弹幕还是从四周的单位向施法者发弹幕,都是可行的。弹幕法有适用和不适用的情况自己酌情考虑。
这里主要就幻幻的第二种方法继续讨论。容易发现算法主要需解决此问题:如何从施法单位身边的所有单位中全面的讨论某两个单位和施法单位关系。
如果想要避免多次单位组选取,上述问题就变成了:如何枚举n个单位中任两个单位组合的所有情况,如何就三个单位讨论阻挡问题。
在abc中取出两个字母有3种情况,abcd取出两个字母有6种情况,n个单位就有n-1+n-2+...+1种。写成循环就是两层(详见楼上触发)。
三个单位是三个点的问题,是点和直线的问题,更是一个三角形的问题。用勾股定理不等式的情况保证三角形是钝角三角形,用海伦公式求出三角形的高,避免分类讨论进行是否阻挡的判定。
这里主要就幻幻的第二种方法继续讨论。容易发现算法主要需解决此问题:如何从施法单位身边的所有单位中全面的讨论某两个单位和施法单位关系。
如果想要避免多次单位组选取,上述问题就变成了:如何枚举n个单位中任两个单位组合的所有情况,如何就三个单位讨论阻挡问题。
在abc中取出两个字母有3种情况,abcd取出两个字母有6种情况,n个单位就有n-1+n-2+...+1种。写成循环就是两层(详见楼上触发)。
三个单位是三个点的问题,是点和直线的问题,更是一个三角形的问题。用勾股定理不等式的情况保证三角形是钝角三角形,用海伦公式求出三角形的高,避免分类讨论进行是否阻挡的判定。