LeetCode 1954. 收集足够苹果的最小花园周长(数学)
文章目錄
- 1. 題目
- 2. 解題
1. 題目
給你一個用無限二維網格表示的花園,每一個 整數坐標處都有一棵蘋果樹。
整數坐標 (i, j) 處的蘋果樹有 ∣i∣+∣j∣|i| + |j|∣i∣+∣j∣個蘋果。
你將會買下正中心坐標是 (0, 0) 的一塊 正方形土地 ,且每條邊都與兩條坐標軸之一平行。
給你一個整數 neededApples ,請你返回土地的 最小周長 ,使得 至少 有 neededApples 個蘋果在土地 里面或者邊緣上。
|x| 的值定義為:
如果 x >= 0 ,那么值為 x
如果 x < 0 ,那么值為 -x
示例 1:
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/minimum-garden-perimeter-to-collect-enough-apples
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
對稱的,考慮 八分之一:坐標為 (0,x),(x,x)(0,x), (x,x)(0,x),(x,x) 的橫的邊
兩點端點共享,只能取一半,x/2,xx/2, xx/2,x
中間可以取到的所有橫坐標的和 ∑(1,2,...,x?1)=x?(x?1)/2\sum(1,2,...,x-1)=x*(x-1)/2∑(1,2,...,x?1)=x?(x?1)/2,縱坐標的和 x?(x?1)x*(x-1)x?(x?1)
所以總的一圈個數為 8?(x/2+x+x?(x?1)/2+x?(x?1))=12x28*(x/2+x+x*(x-1)/2+x*(x-1))=12x^28?(x/2+x+x?(x?1)/2+x?(x?1))=12x2
12 ms 5.8 MB C++
我的CSDN博客地址 https://michael.blog.csdn.net/
長按或掃碼關注我的公眾號(Michael阿明),一起加油、一起學習進步!
總結
以上是生活随笔為你收集整理的LeetCode 1954. 收集足够苹果的最小花园周长(数学)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FastAPI 结合 SQLAlchem
- 下一篇: WIN 10 安装 Hadoop 2.7