学习博客:戳这里

附本人代码:

 1 #include <bits/stdc++.h>
2 using namespace std;
3 typedef long long ll;
4 const int maxn = 2e3 + 10;
5 const ll mod = 998244353;
6 char st[maxn][maxn];
7 int vis[maxn][maxn];
8 int dx[11]={1,-1, 0, 0};
9 int dy[11]={0, 0, 1,-1};
10 const int inf = 0x3f3f3f3f;
11 struct nod{
12 int x, y;
13 };
14 int main() {
15
16 int n, m;
17 int r, c;
18 int X, Y;
19 scanf("%d %d", &n, &m);
20 scanf("%d %d", &r, &c);
21 scanf("%d %d", &X, &Y);
22 for(int i = 1; i <= n; ++i) {
23 scanf("%s", st[i]+1);
24 }
25 memset(vis, inf, sizeof(vis));
26 deque<nod>q;
27 nod u, v;
28 u.x = r, u.y = c;
29 q.push_front(u);
30 vis[u.x][u.y] = 0;
31 while(!q.empty()) {
32 u = q.front(); q.pop_front();
33 for(int i = 0; i < 4; ++i) {
34 int xx = u.x + dx[i];
35 int yy = u.y + dy[i];
36 if(xx >= 1 && xx <= n && yy >= 1 && yy <= m && st[xx][yy] != '*') {
37 if(vis[u.x][u.y] + (i==2) < vis[xx][yy]) {
38 vis[xx][yy] = vis[u.x][u.y] + (i==2);
39 v.x = xx, v.y = yy;
40 if(i == 2) q.push_back(v);
41 else q.push_front(v);
42 }
43 }
44 }
45 }
46 int ans = 0;
47 for(int i = 1; i <= n; ++i) {
48 for(int j = 1; j <= m; ++j) {
49 if(vis[i][j] <= Y && vis[i][j] - j + c <= X) {
50 // printf("%d %d %d\n", vis[i][j], i, j);
51 ++ans;
52 }
53 }
54 }
55 printf("%d\n", ans);
56 return 0;
57 }

最新文章

  1. Python列表去重
  2. 父页面操作iframe子页面的安全漏洞及跨域限制问题
  3. Maven之安装与简单入门一
  4. IOS开发之新浪围脖
  5. Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子,jbpm基础,常见问题解决)
  6. PowerDesigner之PDM检查
  7. 如何在eclipse中添加android ADT
  8. Java获取线程的对象和名称
  9. 362. Design Hit Counter
  10. Spring配置文件的xsd知识点
  11. Nginx设置防止IP及非配置域名访问
  12. linux 安装Brew
  13. script weixin app / weixin xiao chen xu
  14. SpringBoot笔记十五:任务
  15. SQL笔试基础
  16. 【xsy2193】Wallace 最大权闭合子图
  17. SQL server 数据库基本插入、删除命令
  18. 利用Python和webhook实现自动提交代码
  19. AWS S3 CLI的安装和配置
  20. page_address()函数分析

热门文章

  1. 安装python性能检测工具line_profiler
  2. 阿里云OSS对象存储服务(一)
  3. 手动添加Ini4idea,解决pycharm无法打开ini文件
  4. 使用 .NETCore自带框架快速实现依赖注入
  5. 如何将python中pip源设置为国内源
  6. JMETER-正则表达式提取与查看变量是否提取正确
  7. Jmeter非GUI界面对阿里云服务器压测
  8. HDU1823 Luck ans Love 二维线段树
  9. debian 屌丝日记
  10. 菜鸟初学Linux——Ubuntu系统中,用root权限进行复制粘贴操作