码迷,mamicode.com
首页 > 其他好文 > 详细

【codeforces 19/10/26 div2】E.Rock In Push

时间:2019-10-28 14:58:42      阅读:55      评论:0      收藏:0      [点我收藏+]

标签:src   def   nbsp   str   splay   isp   eve   cli   iostream   

技术图片
 1 #include<iostream>
 2 #include<algorithm>
 3 #include<cstdio>
 4 using namespace std;
 5 
 6 #define mfor(i,a,b) for(register int i=(a);i<=(b);i++)
 7 #define mrep(i,a,b) for(register int i=(a);i>=(b);i--)
 8 typedef long long int LL;
 9 
10 const int maxn = 2010;
11 const int mod = 1e9 + 7;
12 char a[maxn][maxn];
13 LL sumd[maxn][maxn];
14 LL sumr[maxn][maxn];
15 LL f[maxn][maxn][2];    //第三维0向右,1向下
16 int n, m;
17 
18 int main()
19 {
20     cin >> n >> m;
21     mfor(i, 1, n)
22     {
23         //scanf_s("%s", a[i] + 1, maxn);
24         scanf(" %s", a[i] + 1);
25     }
26     if (n == m && n == 1)
27     {
28         if (a[1][1] == .)
29         {
30             cout << 1;
31             return 0;
32         }
33     }
34     mrep(i, n, 1)
35     {
36         mrep(j, m, 1)
37         {
38             sumd[i][j] = sumd[i][j + 1] + (a[i][j] == R ? 1 : 0);
39             sumr[i][j] = sumr[i + 1][j] + (a[i][j] == R ? 1 : 0);
40         }
41     }
42     mfor(i, 1, n - 1)
43     {
44         if (!sumr[i][m]) f[i][m][0] = 1;
45     }
46     mfor(i, 1, m - 1)
47     {
48         if (!sumd[n][i]) f[n][i][1] = 1;
49     }
50     mrep(i, n - 1, 1)
51     {
52         mrep(j, m - 1, 1)
53         {
54             (f[i][j][0] += f[i + 1][j][1]) %= mod;
55             (f[i][j][1] += f[i][j + 1][0]) %= mod;
56             if (a[i + 1][j] == R) (f[i][j][0] += f[i + 1][j][0] - f[n - sumr[i + 1][j] + 1][j][1] + mod) %= mod;
57             else (f[i][j][0] += f[i + 1][j][0]) %= mod;
58             if (a[i][j + 1] == R) (f[i][j][1] += f[i][j + 1][1] - f[i][m - sumd[i][j + 1] + 1][0] + mod) %= mod;
59             else (f[i][j][1] += f[i][j + 1][1]) %= mod;
60         }
61     }
62     cout << (f[1][1][0] + f[1][1][1]) % mod;
63 }
View Code

 

【codeforces 19/10/26 div2】E.Rock In Push

标签:src   def   nbsp   str   splay   isp   eve   cli   iostream   

原文地址:https://www.cnblogs.com/thjkhdf12/p/11751703.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!