• 题意:有一个\(n\)X\(m\)的图,"#"表示障碍物,"."表示道路,只能向右或向下走,问从左上角走到右下角的方案数.

  • 题解:这题可以用bfs来搞,但dp更简单点吧~~.首先,只有当向右和向下都能走时,方案数才会增加,我们用dp表示从起点走到某个单位的方案数,这个单位只能从左边或上边走过来,所以它的方案数就是\(dp[i][j]=dp[i][j-1]+dp[i-1][j]\),遍历一下即可.

  • 代码:

    int n,m;
    char s[2000][2000];
    int dp[2000][2000]; int main() {
    //ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    n=read();
    m=read(); for(int i=1;i<=n;++i){
    scanf("%s",s[i]+1);
    } dp[1][1]=1; for(int i=1;i<=n;++i){
    for(int j=1;j<=m;++j){
    if(s[i][j]!='#' && i+j!=2){
    dp[i][j]=dp[i-1][j]+dp[i][j-1];
    dp[i][j]%=mod;
    }
    }
    } printf("%d\n",dp[n][m]); return 0;
    }

最新文章

  1. ArcGIS API for JavaScript(2)-ArcGIS Server发布要素图层服务
  2. 《winform窗体应用程序》----------简易记事本
  3. 犀利的background-clip:text,实现K歌字幕效果
  4. 【Java数据格式化】使用DecimalFormat 对Float和double进行格式化
  5. Python 基本语法1
  6. OCR是用来做什么的
  7. Swift学习笔记十一
  8. [改善Java代码]注意Class类的特殊性
  9. AVR ATMEGA8 串口USART
  10. DataGrid列的合并
  11. php 如何写入、读取word,excel文档
  12. iOS 监听键盘变化
  13. MySQL5.7以上开启binlog
  14. 【Matlab编程】Matlab高效编程技巧
  15. 程序员的沟通之痛https://blog.csdn.net/qq_35230695/article/details/80283720
  16. APP reset.css
  17. 大数模板 poj3982
  18. python脚本获取文件的创建于修改日期并计算时间差
  19. PS制作纸质复古野外露营插画分享
  20. 初入Installshield2015

热门文章

  1. MySQL select if 查询最后一个主键 id
  2. win10/windows 安装Pytorch
  3. OpenID协议
  4. window.open()打开新窗口教程
  5. 从软件(Java/hotspot/Linux)到硬件(硬件架构)分析互斥操作的本质
  6. JavaScript中函数的调用!
  7. VS2019中scanf返回值被忽略的问题及其解决方法
  8. 3、剑指offer-数组——数组中重复的数字
  9. Linux kernel 同步机制
  10. LOJ10144宠物收养所