2020.02.14日常总结

51nod P1486   大大走格子 \color{green}{\text{51nod\ P1486\ \ \ 大大走格子}}

\color{blue}{【题意】:} 现在大大面前有 n n m m 列格子,其中 k k 个不能走,求从 ( 1 , 1 ) (1,1) 走到 ( n , m ) (n,m) 的方案数。 1 n , m 1 × 1 0 5 , 1 k 2 × 1 0 3 1 \leq n,m \leq 1 \times 10^5,1 \leq k \leq 2 \times 10^3 ,答案对 1000000007 ( 1 × 1 0 9 + 7 ) 1000000007(1 \times 10^9+7) 取模。

\color{blue}{【思路】:} 如果没有障碍,那么从 ( 1 , 1 ) (1,1) 走到 ( n , m ) (n,m) 的方案数即

C n + m 2 n 1 C_{n+m-2}^{n-1}

什么意思呢?它代表我们从 ( 1 , 1 ) (1,1) 走到 ( n , m ) (n,m) 需要 n + m 2 n+m-2 步,其中 n 1 n-1 步是横着走,所以我们可以根据这个算出方案数。

考虑有障碍的时候怎么办?

正难则反。我们考虑容斥。即先把从 ( 1 , 1 ) (1,1) 走到所有障碍点和 ( n , m ) (n,m) 的方案数,然后把所有不能走到的方案数减去即可。

\color{blue}{【代码】:}
在这里插入图片描述

在这里插入图片描述

发布了103 篇原创文章 · 获赞 4 · 访问量 6725

猜你喜欢

转载自blog.csdn.net/ZHUYINGYE_123456/article/details/104318198