Leetcode 1037.有效的回旋镖
原题连接:Leetcode 1037. Valid Boomerang
Given an array points
where points[i] = [xi, yi]
represents a point on the X-Y plane, return true
if these points are a boomerang.
A boomerang is a set of three points that are all distinct and not in a straight line.
Example 1:
Input: points = [[1,1],[2,3],[3,2]]
Output: true
Example 2:
Input: points = [[1,1],[2,2],[3,3]]
Output: false
Constraints:
- points.length == 3
- points[i].length == 2
- 0 <= xi, yi <= 100
方法一:向量叉乘
思路:
要判断3个点是否在同一直线上,想到向量叉乘。
由3个点组成两个向量,如果在同一条直线上,叉乘的结果为0
c++代码:
class Solution {public:bool isBoomerang(vector<vector<int>>& points) {vector<int> v1 = {points[1][0] - points[0][0], points[1][1] - points[0][1]};vector<int> v2 = {points[2][0] - points[0][0], points[2][1] - points[0][1]};return v1[0] * v2[1] - v1[1] * v2[0] != 0;}
};
复杂度分析:
- 时间复杂度:O(1)
- 空间复杂度:O(1)
方法二:求三角形面积
Leetcode 1037.有效的回旋镖相关推荐
- Python描述 LeetCode 1037. 有效的回旋镖
Python描述 LeetCode 1037. 有效的回旋镖 大家好,我是亓官劼(qí guān jié ),在[亓官劼]公众号.CSDN.GitHub.B站等平台分享一些技术博文,主要包括前端开 ...
- leetcode 1037. 有效的回旋镖(三点共线问题)
[题目]1037. 有效的回旋镖 1037. 有效的回旋镖 1232. 缀点成线 回旋镖定义为一组三个点,这些点各不相同且不在一条直线上. 给出平面上三个点组成的列表,判断这些点是否可以构成回旋镖. ...
- [LeetCode]1037. 有效的回旋镖
题目 1037. 有效的回旋镖 1037. 有效的回旋镖 给定一个数组 points ,其中 points[i] = [xi, yi] 表示 X-Y 平面上的一个点,如果这些点构成一个 回旋镖 则返回 ...
- LeetCode 1037. 有效的回旋镖
1. 题目 回旋镖定义为一组三个点,这些点各不相同且不在一条直线上. 给出平面上三个点组成的列表,判断这些点是否可以构成回旋镖. 示例 1: 输入:[[1,1],[2,3],[3,2]] 输出:tru ...
- leetcode.1037. 有效的回旋镖
回旋镖定义为一组三个点,这些点各不相同且不在一条直线上. 给出平面上三个点组成的列表,判断这些点是否可以构成回旋镖. 示例 1: 输入:[[1,1],[2,3],[3,2]] 输出:true 示例 2 ...
- 【宫水三叶的刷题日记】1037. 有效的回旋镖(简单)
题目描述 这是 LeetCode 上的 1037. 有效的回旋镖 ,难度为 简单. Tag : 「计算几何」.「数学」 给定一个数组 points,其中 表示 X-Y 平面上的一个点,如果这些点构 ...
- 【JAVA】【刷题子】1037. 有效的回旋镖
一.题目与题目分析 题目 给定一个数组 points ,其中 points[i] = [xi, yi] 表示 X-Y 平面上的一个点,如果这些点构成一个 回旋镖 则返回 true . 回旋镖 定义为一 ...
- Ruby:线性代数解法 LeetCode简单题 1037. 有效的回旋镖
给定一个数组 points ,其中 points[i] = [xi, yi] 表示 X-Y 平面上的一个点,如果这些点构成一个 回旋镖 则返回 true . 回旋镖 定义为一组三个点,这些点 各不相同 ...
- 1037.有效的回旋镖
回旋镖定义为一组三个点,这些点各不相同且不在一条直线上. 给出平面上三个点组成的列表,判断这些点是否可以构成回旋镖. 示例 1: 输入:[[1,1],[2,3],[3,2]] 输出:true 示例 2 ...
最新文章
- get 和post 方式请求数据
- linux系统运行快捷键,Linux操作系统下运行命令时CTRL+Z的作用
- 【线上分享】移动音视频SDK工程实践之数据采集和处理
- hdu 3819动态规划
- 15 张图, 把TCP/IP 讲得一清二楚!
- 面试官:怎么改进哈希算法实现负载均衡的扩展性和容错性?我:...
- tensorflow精进之路(十九)——python3网络爬虫(下)
- idea 开源申请授权到期怎么办
- 中兴f477v2超级管理员_中兴本机电信光猫超级密码获取-中兴F412/F460/F612/F660超级密码获取下载V1.0最新版-西西软件下载...
- vscode设置默认浏览器
- Python爬虫——爬去必应壁纸(简化版)
- FZU 1275和UVA11624
- vue 节流throttling防抖debounce
- 基于SIFT+Kmeans+SVM的场景识别,参数需注意的问题(Matlab实现)
- 硬盘 IDE 切换到 AHCI
- 高通平台Android源码bootloader分析之sbl1(一)
- iPhone开发——UIViewContoller subclass
- 基于Intel 82571芯片的网卡介绍
- 判断数组类型的方法(Array.isArray)以及Math数字对象
- 回到1989年,用java成为网络皇帝