51 nod 机器人走方格

从一个长方形的方格的右上角 走到 左下角 , 问一共有多少种不同的路线可以达到 .

 1 #include<stdio.h>
 2 #include<string.h>
 3 #include<math.h>
 4 #include<iostream>
 5 #include<algorithm>
 6 #include<queue>
 7 #include<vector>
 8 #include<set>
 9 #include<stack>
10 #include<string>
11 #include<sstream>
12 #include<map>
13 #include<cctype>
14 #include<limits.h>
15 using namespace std;
16 #define leng 1005
17 long long dp[leng][leng];
18 int main()
19 {
20     int n,m;
21     while(~scanf("%d%d",&n,&m))
22     {
23         memset(dp,0,sizeof(dp));
24         for(int i = 1; i <= n; i ++)
25             for(int j = 1; j <= m; j ++)
26                 if(i == 1 && j == 1)
27                     dp[i][j] = 1;
28                 else
29                     dp[i][j]=(dp[i-1][j]+dp[i][j-1])%1000000007;
30         printf("%d\n",dp[n][m]);
31     }
32 }

 

 

posted @ 2016-05-31 17:11  X-POWER  阅读(329)  评论(0编辑  收藏  举报