摘要:現在,我們查看這些立方體在和平面上的投影。投影就像影子,將三維形體映射到一個二維平面上。返回所有三個投影的總面積。
前言
LeetCode Weekly Contest 96的第一道題目,分值為4分。雖然標注為簡單,但是需要有很好的空間想象力。原題目內容如下(由于這個題目需要結合題目中的示例查看,示例為一些圖片,所以建議去原站看):
在 N * N 的網格中,我們放置了一些與 x,y,z 三軸對齊的 1 * 1 * 1 立方體。解題思路
每個值 v = gridi 表示 v 個正方體疊放在單元格 (i, j) 上。
現在,我們查看這些立方體在 xy、yz 和 zx 平面上的投影。
投影就像影子,將三維形體映射到一個二維平面上。
在這里,從頂部、前面和側面看立方體時,我們會看到“影子”。
返回所有三個投影的總面積。
這個題目初看起來很難,但是我們可以把這個問題分解為三個小問題,分別為頂部、前面和側面的投影面積,然后通過示例找出這三個小問題的規律就可以了。
頂部投影面積:通過觀察示例圖可以發現頂部的投影實際上就是正方體占地面積,即可以看做是二維數組中不為0的元素個數
前面投影面積:通過觀察示例圖和二維數組,不難發現實際上前面的投影面積就是二維數組中每行元素的最大值之和
側面投影面積:通過觀察示例圖和二維數組,不難發現實際上前面的投影面積就是二維數組中每列元素的最大值之和
實現代碼public int projectionArea(int[][] grid) { int result=0; int xy=0;//頂部投影面積,對應二維數組不為0的元素個數 int yz=0;//前面投影面積,對應二維數組每行元素的最大值之和 int xz=0;//側面投影面積,對應二維數組每列元素的最大值之和 for(int i=0;i
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76616.html
摘要:基于的技術的圖形組件組件通過對底層技術的封裝,與其他組件一樣,基于統一的數據模型來驅動圖形顯示,極大降低了圖形技術開發的門檻,在熟悉數據模型基礎上,一般程序員只需要小時的學習即可上手圖形開發。 在數據量很大的2D 場景下,要找到具體的模型比較困難,并且只能顯示出模型的的某一部分,顯示也不夠直觀,這種時候能快速搭建出 3D 場景就有很大需求了。但是搭建 3D 應用場景又依賴于通過 3ds...
閱讀 844·2023-04-25 21:21
閱讀 3226·2021-11-24 09:39
閱讀 3067·2021-09-02 15:41
閱讀 1993·2021-08-26 14:13
閱讀 1827·2019-08-30 11:18
閱讀 2768·2019-08-29 16:25
閱讀 506·2019-08-28 18:27
閱讀 1580·2019-08-28 18:17