摘要:題目鏈接不會,參考這個博客的解釋計算三個點的法向量叉乘,任意三個點必須同正或同負。這樣判斷三點組成的兩邊角度是否小于。注意考慮度的情況,這時候叉乘為。
469. Convex Polygon
題目鏈接:https://leetcode.com/problems...
不會,參考這個博客的解釋:
http://www.cnblogs.com/grandy...
計算三個點的法向量(叉乘),任意三個點必須同正或同負。這樣判斷三點組成的兩邊角度是否小于180。注意考慮90度的情況,這時候叉乘為0。
public class Solution { public boolean isConvex(List> points) { int prev = 0; int n = points.size(); for(int i = 0; i < n; i++) { // check the angle constructed by (p0, p1) and (p0, p2) List
p0 = points.get(i); List p1 = points.get((i + 1) % n); List p2 = points.get((i + 2) % n); int dx1 = p0.get(0) - p1.get(0), dx2 = p0.get(0) - p2.get(0); int dy1 = p0.get(1) - p1.get(1), dy2 = p0.get(1) - p2.get(1); int cur = getProduct(dx1, dx2, dy1, dy2); // product different if((prev < 0 && cur > 0) || (prev > 0 && cur < 0)) return false; prev = (cur == 0 ? prev : cur); } return true; } private int getProduct(int dx1, int dx2, int dy1, int dy2) { return dx1 * dy2 - dx2 * dy1; } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76398.html
摘要:業務背景物流同城配送,在用戶下單的時候會進行配送超區校驗,前端會將用戶的定位傳入后臺服務,后臺服務針對商家的自定義配送區域通過地圖控件拖拽出來的不規則圖形進行校驗。 業務背景 物流同城配送,在用戶下單的時候會進行配送超區校驗,前端會將用戶的定位傳入后臺服務,后臺服務針對商家的自定義配送區域(通過地圖控件拖拽出來的不規則圖形)進行校驗。 showImg(https://segmentfa...
摘要:難度系數普通關鍵詞前言看到網站做的很炫,想要借鑒,發現主要是用的實現的,兼容不好,因此想著用實現下。實現思路根據參考網站的代碼,動物圖案是用實現的,第一時間想到了的另外對于轉場動畫,過渡動畫,找個自己熟悉的動畫庫實現就行了。 難度系數:普通關鍵詞:GSAP SVG 前言 看到species網站做的很炫,想要借鑒,發現主要是用css3的clip-path實現的,兼容不好,因此想著用js...
摘要:最小外接矩形外接矩形計算對一個凸多邊形進行外接矩形計算,需要知道當前面的最大和最小值,即可獲得外接矩形最小外接矩形計算對凸多邊形的每一條邊都繪制一個外接矩形求最小面積。 最小外接矩形 外接矩形計算 對一個凸多邊形進行外接矩形計算,需要知道當前面的最大xy 和最小xy值,即可獲得外接矩形 showImg(https://segmentfault.com/img/remote/146000...
摘要:官網效果腳本地圖中心點昆明地圖縮放層級縮放禁止雙擊放大版權切片圖層地址繪制區域單擊移動清除雙擊移除事件保存方便后面刪除請入名稱鍵盤事件鍵拖動 leaflet官網:http://leafletjs.com/ 效果:showImg(https://segmentfault.com/img/bVOmeX?w=546&h=351); 腳本: var map = L.map(map, { ...
閱讀 2197·2021-11-25 09:43
閱讀 1165·2021-11-23 09:51
閱讀 3499·2021-11-23 09:51
閱讀 3629·2021-11-22 09:34
閱讀 1543·2021-10-09 09:43
閱讀 2119·2019-08-30 15:53
閱讀 3161·2019-08-30 14:07
閱讀 568·2019-08-28 18:14