【游戏开发】Acm培训自我鉴定16
这次学习总结是关于三分法的这个三分法跟二分法有相似之处的。三分法的基本原理:
一个函数具有极值点,在给定的区间left到right之间存在极值点,mid=(left+right)/2;
midmid=(mid+right)/2;如果mid靠近极值点,则right=midmid(就是极值点右侧靠近右端点的点);如果midmid更靠近极值点那么left=mid;比如说例题:
如图,人左右走动,求影子L的最长长度。
根据图,很容易发现当灯,人的头部和墙角成一条直线时(假设此时人站在A点),此时的长度是影子全在地上的最长长度。当人再向右走时,影子开始投影到墙上,当人贴着墙,影子长度即为人的高度。所以当人从A点走到墙,函数是先递增再递减,为凸性函数,所以我们可以用三分法来求解。
这道题用数学的知识就是利用相似三角形,x/y=H/(y+D)解出来的结果是,L = x + D * (h - x) / (H - x)其实具体的代码就是靠上面的格式套进去,说实在的现在还到不了完全理解的境地,也就是学会了怎么用而已;
这次总结就这些了。
以上是 【游戏开发】Acm培训自我鉴定16 的全部内容, 来源链接: utcz.com/a/71012.html