LeetCode 469. 凸多边形(向量叉积)
文章目录
- 1. 题目
- 2. 解题
1. 题目
给定一个按顺序连接的多边形的顶点,判断该多边形是否为凸多边形。
注:
顶点个数至少为 3 个且不超过 10,000。
坐标范围为 -10,000 到 10,000。
你可以假定给定的点形成的多边形均为简单多边形。
换句话说,保证每个顶点处恰好是两条边的汇合点,并且这些边 互不相交 。
示例 1:
[[0,0],[0,1],[1,1],[1,0]]
输出: True
解释:
示例 2:
[[0,0],[0,10],[10,10],[10,0],[5,5]]
输出: False
解释:
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/convex-polygon
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
平面向量 向量积 定义
【平面向量】向量的叉积与三角形的面积
- 注意叉乘为0表示两个向量共线
[[0,0],[0,1],[1,1],[2,1],[2,2],[2,3],[3,3],[3,0]]
false
[[0,0],[1,0],[1,1],[-1,1],[-1,0]]
true
class Solution {public:bool isConvex(vector<vector<int>>& points) {long long cur, prev = 0;int i, n = points.size();long long x1, y1, x2, y2;for(i = 0; i < n; i++) {x1 = points[i][0]-points[(i+1)%n][0];y1 = points[i][1]-points[(i+1)%n][1];x2 = points[i][0]-points[(i+2)%n][0];y2 = points[i][1]-points[(i+2)%n][1];cur = x1*y2-x2*y1;if(cur != 0)//两向量不共线{if(cur*prev < 0)//跟上次的方向不一样return false;prev = cur;}}return true;}
};
64 ms 15.5 MB
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
LeetCode 469. 凸多边形(向量叉积)相关推荐
- 判断凸多边形(向量叉积运用)
469. 凸多边形 - 力扣(LeetCode) 给定 X-Y 平面上的一组点 points ,其中 points[i] = [xi, yi] .这些点按顺序连成一个多边形. 如果该多边形为 凸 多边 ...
- 【2019西安ICPC邀请赛热身赛A hdu2036】求多(四)边形面积(四边形面积公式/向量叉积)
这是热身赛的一道签到题,写博客的目的主要是熟悉一下向量点叉积的写法. (叉积求多边形面积:hdu2036,模版题) 题目: 解题思路: 四边形面积公式:(也适用于凹四边形) s=(m*n*sinA)/ ...
- 利用向量叉积求三角形的面积(+STL:nth_element求第K大的数)
牛客寒假算法集训营2 https://ac.nowcoder.com/acm/contest/327/A A.处女座的签到题 题目描述 平面上有n个点,问:平面上所有三角形面积第k大的三角形的面积是多 ...
- hihoCoder1687(向量叉积)
#1687 : 寻找切线 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定平面上N个点P1=(X1, Y1), P2=(X2, Y2), ... PN=(XN, YN ...
- 向量点积(Dot Product),向量叉积(Cross Product)
参考的是<游戏和图形学的3D数学入门教程>,非常不错的书,推荐阅读,老外很喜欢把一个东西解释的很详细. 1.向量点积(Dot Product) 向量点积的结果有什么意义?事实上,向量的点积 ...
- 三维欧几里德空间中两个向量叉积的问题
三维欧几里德空间中两个向量叉积的问题 定义 矩阵表示 几何意义 定义 两个向量 a和b仅在三维空间中有意义.定义为: a ⃗ ∗ b ⃗ = ∣ ∣ a ⃗ ∣ ∣ ∣ ∣ b ⃗ ∣ ∣ s i n ...
- 向量叉积与向量叉积的模的运算
一:向量叉积 设两个点P(x1,y1,z1),Q(x2,y2,z2) 叉积PxQ=(y1z2-y2z1,x2z1-x1z2,x1y2-x2y1) 代码实现(vb.net封成一个函数): Private ...
- 向量叉积(Cross product)的几何意义及应用
向量叉积 仅在三维空间,两个向量的叉积才有定义,记作 u ^ v 定义为: u ^ v = ||u|| ||v|| sin(θ) n 其中,θ表示u 和 v 的夹角, ||u|| 和 ||v|| 分别 ...
- 叉积的证明_向量叉积定义的证明
前面写了一篇向量点积定义的证明,由于这个证明比较简单,所以也没有引起深入的思考.后来打算写一篇叉积的证明时,却发现有些东西真的不好理解. 设两个向量$\mathbf{a} = (x_1, y_1, z ...
最新文章
- Redis 概念以及底层数据结构
- 多模态任务新蓝海:视觉语言导航最新进展
- 「NLP」用于序列标注问题的条件随机场
- tensorflow和python先学哪个-前辈说先学会了这些Python知识点,再谈学习人工智能!...
- C#字典Dictionary排序(顺序、倒序)
- Mac快速显示桌面快捷键
- Autograd:自动求导
- 2015年第六届蓝桥杯C/C++ A组国赛 —— 第五题:切开字符串
- 程序语言的奥妙:算法解读 ——读书笔记
- Matcher类的简单使用
- 英雄无敌3高清 Android,安卓TOP10:《英雄无敌3》高清重制版上架
- 收藏 | 深度学习不确定性量化: 技术、应用与挑战
- 一道关于String的易错习题
- 原来“事务0丢失”是这样做到的
- 【LeetCode】【HOT】297. 二叉树的序列化与反序列化(BFS)
- 让shell终端和goland控制台输出彩色的文字
- JS获取指定月的前N个月数据
- Egret引擎的常用倒计时
- Seaborn 绘图中设置字体及大小
- Excel如何制作二级下拉菜单
热门文章
- Emmet的html语法
- 大学c语言程序设计大赛,关于举办宁夏大学第二届C语言程序设计大赛的通知
- python 递归函数与循环的区别_提升Python效率之使用循环机制代替递归函数
- 电子计算机可直接执行的指令机器内部是以,电子计算机可直接执行的指令在机器内部是以( )表示....
- 选购四轴飞行器的部件
- gunicorn 几种 worker class 性能测试比较
- Gulp-静态网页模块化
- [笔记] FireDAC DataSet 导入及导出 JSON
- java 3种单例模式
- Windows Phone 资源管理与换肤思考