Leetcode學習筆記(1)
62.不同路徑
覺得這是一道數學問題了。機器人只能向右走或者是向下走,要從起點到終點,必須要走m+n-2步,從這m+n-2步中選出m-1步往下走,n-1步往右走。要求的就是組合數Cm+n-2n-1或者Cm+n-2m-1了,m-1和n-1,哪個小選哪個。程式碼如下:
class Solution {
public:
int uniquePaths(int m, int n) {
int num=m+n-2;
int less=m>n?n-1:m-1;
long long g=1;
long long h=1;
for(int i=less; i>0; --i){
g=g*num;
--num;
}
for(int i=less; i>0; --i){
h=h*less;
--less;
}
return g/h;
}
};
算階乘剛開始用了“!”,報錯,所以改成用迴圈了。g,h設為int會溢位,改為long long。
執行用時0ms,擊敗100%。記憶體消耗6.2MB,擊敗64.84%。
相關文章
- 學習筆記1筆記
- 學習筆記-1筆記
- swift學習筆記《1》Swift筆記
- Vue學習筆記1Vue筆記
- Numpy學習筆記 1筆記
- HTML學習筆記1HTML筆記
- flex:1學習筆記Flex筆記
- Numpy學習筆記(1)筆記
- SLAM學習筆記(1)SLAM筆記
- Oracle學習筆記1Oracle筆記
- mysql學習筆記-1MySql筆記
- Zynq學習筆記(1)筆記
- scapy學習筆記(1)筆記
- Git—學習筆記1Git筆記
- perl學習筆記1筆記
- Oracle學習筆記-1Oracle筆記
- git學習筆記1Git筆記
- golang 學習筆記1Golang筆記
- git學習筆記 1Git筆記
- HTML學習筆記(1)HTML筆記
- DAY 24 LeetCode學習筆記LeetCode筆記
- Scrapy 框架 (學習筆記-1)框架筆記
- React學習筆記1—起步React筆記
- webpack1學習筆記Web筆記
- hibernate學習筆記(1)筆記
- python學習筆記(1Python筆記
- ADworld學習筆記(1)筆記
- spring學習筆記(1)Spring筆記
- Android學習筆記(1)Android筆記
- PhoneGap學習筆記1筆記
- Linux學習筆記1Linux筆記
- hibernate學習筆記 1筆記
- GTK+學習筆記1筆記
- 機器學習的學習筆記1機器學習筆記
- PL/SQL學習筆記-1SQL筆記
- ruby 字串學習筆記1字串筆記
- Flex學習筆記(Day 1)Flex筆記
- oracle 學習筆記---效能優化學習(1)Oracle筆記優化