上海市计算机学会竞赛平台八月月赛丙组第五题——方格路径

给定n×m个方格构成的图,每个格子都有一种地形:

  • 有一些格子是墙,以符号 # 表示,墙不可通行。
  • 有一些格子是空地,以符号 . 表示,空地可以通行。

请统计从左上角的方格出发,有多少种不同的路线可以以最短距离走到右下角。在行走过程中,不能进入地形为墙的方格,保证起点与终点方格地形不是墙。且行走时,只能移动到水平或垂直方向相邻的方格。

由于方案数可能很大,输出模 1,000,000,007 的余数。

输入格式
  • 第一行:单个整数 n 与 m
  • 第二行到第 n+1 行:第 i+1 行每行有 m 个整数表示第 i 行的地形
输出格式
  • 单个整数:表示路线方案模 1,000,000,007 的余数。
数据范围
  • 30% 的数据,1≤n,m≤4
  • 60% 的数据,1≤n,m≤10
  • 100% 的数据,1≤n,m≤1000
样例数据

输入:

3 3

...

.#.

...

输出:

2

思路:使用动态规划

ACcode

#include<bits/stdc++.h> 
using namespace std;

const int MOD = 1000000007;

int main() 
{
    int n, m;
    cin >> n >> m;

    vector<vector<char>> grid(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值