題目連結:
題目意譯:
給定 n 個訂單,每個訂單由集貨以及送貨之服務所組成。
請統計所有可能的合法集貨/送貨序列之數量,使得每個 delivery(i) 必定都位於 pickup(i) 之後。
由於答案可能很大,將其模 10 ^ 9 + 7 後再回傳。
限制:
1 ≦ n ≦ 500
範例測資:
範例 1:
輸入: n = 1
輸出: 1
解釋: 唯一的順序 (P1, D1),1 號送貨必定位於 1 號集貨之後。
範例 2:
輸入: n = 2
輸出: 6
解釋: 所有可能的訂單:
(P1,P2,D1,D2)、(P1,P2,D2,D1)、(P1,D1,P2,D2)、(P2,P1,D1,D2)、(P2,P1,D2,D1) 以及 (P2,D2,P1,D1)。
(P1,D2,P2,D1) 是不合法的訂單,因為 2 號集貨位於 2 號送貨之後。
範例 3:
輸入: n = 3
輸出: 90
解題思維:
等價於卡塔蘭數(Catalan Number,參見
這題)。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。