Leetcode 1359.有效的快递序列数目
1 题目描述(Leetcode题目链接)
给你 n 笔订单,每笔订单都需要快递服务。
请你统计所有有效的 收件/配送 序列的数目,确保第 i 个物品的配送服务 delivery(i) 总是在其收件服务 pickup(i) 之后。
由于答案可能很大,请返回答案对 10^9 + 7 取余的结果。
输入:n = 1
输出:1
解释:只有一种序列 (P1, D1),物品 1 的配送服务(D1)在物品 1 的收件服务(P1)后。
提示:1 <= n <= 500
2 题解
排列组合 ( 2 n ! ) 2 n \cfrac{(2n!)}{2^n} 2n(2n!)
class Solution:
def countOrders(self, n: int) -> int:
return math.factorial(2*n)//2**n%1000000007
题目标签是动态规划,按照动态规划的思路推也行,都是一个意思。
class Solution:
def countOrders(self, n: int) -> int:
res = 1
for i in range(2, n+1):
res *= i*(2*i-1)
return res%1000000007