题目来源:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=806题意:凸四边形上
有8个点, 4个顶点 , 和 每2个顶点的中点。经过这8个点的每一条线段,将四边形分成2份, 求这两份面积最近的面积。分析: 枚举, 每条线段, 计...
分类:
其他好文 时间:
2014-05-08 18:44:03
阅读次数:
284
题目来源:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=608分析:两个圆放到矩形的临界点图为:其中a为长,
b为宽, r1 > r2红色三角形的三边长分别为:x = a - (r1 +r2)y = b - (r1 + r2)z...
分类:
其他好文 时间:
2014-05-08 14:17:58
阅读次数:
377
圆与三角形之间的碰撞检测算法可以综合运用之前写过的基本图形间的碰撞检测算法。
如果圆心在三角形内,则三角形与圆必然相交,转换为判断点在三角形内,参考:判断点是否在三角形内;
如果圆与三角形任一条边相交,则三角形与圆必然相交,转换为圆与线段相交,参考:圆与线段碰撞检测;
算法实现如下:
{CSDN:CODE:332591}...
分类:
其他好文 时间:
2014-05-08 04:03:50
阅读次数:
273
前置说明一:
Unity中的drawcall定义:
每次引擎准备数据并通知GPU的过程称为一次Draw Call。
Unity(或者说基本所有图形引擎)生成一帧画面的处理过程大致可以这样简化描述:引擎首先经过简单的可见性测试,确定摄像机可以看到的物体,然后把这些物体的顶点(包括本地位置、法线、UV等),(顶点如何组成三角形),变换(就是物体的位置、旋转、缩放、以及摄像机位置等),相关光源...
分类:
其他好文 时间:
2014-05-07 23:30:51
阅读次数:
384
题目链接:1331 - Minimax Triangulation
题意:按顺序给定一些点,把这些点分割为n - 2个三角形,代价为最大三角形面积,求代价最小
思路:区间DP,dp[i][j]代表一个区间内,组成的情况,枚举k,dp[i][j] = min(max(dp[i][k],dp[k][j], area(i, j, k)),area代表i、j、k三点构成的三角形面积,然后判断该三角形内...
分类:
其他好文 时间:
2014-05-07 12:15:38
阅读次数:
367
题目链接:1543 - Telescope
题意:按顺序给定圆周上一些点,问用选一些点组成m边形面积的最大值。
思路:dp,dp[i][j][k] 表示第一个点为i,最后一个点为j,当前选择k的最大值,因为多选一个点,会多的面积为他和第一个点和最后一个点构成的三角形面积,然后利用海伦公式求面积,状态转移为:dp[i][j][x] = max(dp[i][j][x], dp[i - 1][j][...
分类:
其他好文 时间:
2014-05-07 07:57:49
阅读次数:
301
题目大意:按照顺时针或者逆时针的顺序给出多边的点,要将这个多边形分解成n-2个三角形,要求使得这些三角行中面积最大的三角形面积尽量小,求最小值。
解题思路:状态很好想,dp[i][j]表示从第i个点到第j个点,划分成j-i-1个三角形的最优解,然后每次转移时,枚举长度和左边界始点,那么根据长度和左边界点就可以知道右边界点,然后枚举左边界和右边界中间的点k,dp[i][j] = min(d...
分类:
其他好文 时间:
2014-05-07 07:47:25
阅读次数:
356
找出一个数组中的三个数,三个数不能组成三角形。
三个数不能组成三角形的条件是:a + b
两边和小于第三边。
这个问题属于三个数的组合问题了。暴力法可解,但是时间效率就是O(n*n*n)了,很慢。
不过既然是组合问题就必定可以使用排序后处理的方法降低时间效率的。
这里降低时间效率的方法是:
选一个最大的数c,然后选两个小数a和b,其中a
这样可以把时间效率降到O(n*n)...
分类:
其他好文 时间:
2014-05-07 06:32:23
阅读次数:
289
题目:HDU 4720 :Naive and Silly Muggles
题目大意:这题的意思是给出三个点, 然后在给出另一个点,问这个点会不会在覆盖前面三个点的最小的圆里面(包括边界), 在里面最输出danger, 如果任何情况下这个点都不在圆里面,那么就输出safe。
解题思路:三个点最小的覆盖的圆是三角形的外接圆,这样的圆面积一定是最小的。 但是相同面积的圆,所在的位置,...
分类:
其他好文 时间:
2014-05-06 23:06:15
阅读次数:
382